因此,在我的 Angular 应用程序中,我尝试使用 JSP 在服务器端处理保存。我遇到的问题是,当使用 Angular 的 $save 方法时,它将对象数据(我正在保存的对象)作为 JSON 对象发送,但不是以我习惯的任何方式发送。该对象无法通过 request.getParameter() 访问,并且在 firebug 中查看请求时,我可以看到它不发送 JSON 或具有任何参数。相反,它在“POST”部分发送 json 对象。我不太明白这里发生了什么。???
所以这是我到目前为止所知道的:
Angular 中帖子的默认 contentType 是“application/json”,因此如果您将其更改为“application/x-www-form-urlencoded;charset=utf-8”,您至少可以使用获取 json 对象的参数request.getParameter() (如果您还更改了 json 对象的传输方式)
但
这首先不是真正的问题,因为如果我使用 jQuery.ajax() 发出请求并将 contentType 设置为“application/json”,然后将 json 对象作为数据传递,那么我仍然会得到 json 对象属性作为参数,所以我可以使用 request.getParameter(),你只是没有在 url 中获取查询字符串。
SOOO,我的问题是:
1) Angular 发送数据的方式到底是怎么回事
2) 有什么方法可以在仍然能够使用 $resource $save 函数的同时更改它(更改 $http 的 contentType 在使用 $resource 方法时会产生一些不良影响),而且,最重要的是
3)如果我不能改变它(或者即使我可以),你如何用它现在的工作方式解析JSP中的json数据。
非常感谢您的帮助,我不敢相信我还找不到这方面的东西,我一直在寻找一段时间。