我正在使用$ resource来访问一个期望带有GET请求的json主体的API。
默认情况下,angularjs将数据序列化为queryparams,但这不是我需要的。是否有一些配置或黑客可以让$resource
将数据序列化为正文而不是查询参数的GET请求?
答案 0 :(得分:1)
虽然是GET body is allowed by the HTTP standard,但使用它们确实不是一个好主意。您将与其他系统(例如代理,透明或其他)进行非常差的互操作。
无法使用GET在$资源上设置正文只是您将要看到的那种糟糕互操作的一个例子。
答案 1 :(得分:1)
不,原因很简单:使用GET
时,浏览器不会发送有效负载。 specification对send
的{{1}}方法说明了以下内容:
可选参数提供请求实体主体。如果请求方法是GET或HEAD,则忽略该参数。
因此,它不是角色问题或XMLHttpRequest
的限制。在符合标准的浏览器中根本不可能。