我正在使用 RESTful 服务(使用 Jersey)开发一个带有 AngularJS(客户端)和 Java(服务器端)的应用程序。
在客户端我有这样的东西
$http({
url : "/Something/rest/...",
method : "POST",
headers : {
...
'text' : text
}
});
在服务器端,我的 Java 方法标头如下所示
public JSONObject myMethod(@HeaderParam("text") String text [...]) throws JSONException
尝试发送请求时出现此错误
Error: Failed to execute 'setRequestHeader' on 'XMLHttpRequest': 'Some text here formatted with \n and \t' is not a valid HTTP header field value.
这是因为格式化吗?是因为文字很长吗?
我应该改变什么?请指导我
原文由 Marius Manastireanu 发布,翻译遵循 CC BY-SA 4.0 许可协议
你是故意在标题中发送你的“文本”吗?这通常不是执行此操作的地方。要通过 POST(或 GET)发送内容,您应该使用“数据”字段。所以:
,并在服务器端进行类似的更改以从 POST 获取数据。除非您知道自己在做什么,否则您不需要也不应该弄乱标题。