我使用Angular $资源向我的控制器发出请求,在Spring应用程序上实现.
当控制器只返回一个Integer值时,$resource会解析它.
用Firebug检查它我得到类似的东西:
当控制器只返回一个Integer值时,$resource会解析它.
用Firebug检查它我得到类似的东西:
Resource { 0="1",1="9",2="1",more...}
其中191只是服务器返回的intger值.
其他复杂对象没有问题(由服务器在JSON中解析).
建议?
谢谢
FB
我知道这有点老了,但我遇到了类似的问题,有人指出我正确的方向.
如果你的服务器发送回JSON编码的共鸣,但你只传递一个值(在你的情况下是191),$resource似乎将它解释为一个字符串,然后它将分成一个单独的字符数组(我’我不是100%的技术细节为什么,但这是我的经验).所以你需要做的是发回包装在JSON对象中的值.
所以,而不是做这样的事情:
function callback(req,res) { var number = 191; // this is just for example purposes res.json(number); }
你需要做一些事情:
function callback(req,res) { var number = 191; // again,just for an example res.json({ value: number }); }
然后当你的$resource调用回来时,只需访问响应的value属性,你应该好好去.
附:这里的示例基于Node / Express后端,而不是Spring,但我认为这仍然适用.