0
我喜欢通过将jQuery用于(Java)Rest服务来发送更改的数据。该服务不在同一个域中。jQuery Ajax POST失败,出现错误400(错误请求)
好这对REST服务的Java代码:
@POST
@Path(value = "/save")
@Consumes(MediaType.APPLICATION_JSON)
public void persistEntities(final Object dto) { // do something here }
这是POST请求的jQuery代码:
$.ajax({
url: 'http://csepcchb/zedas/rest/json/save',
type: 'POST',
dataType: 'jsonp',
crossDomain: true,
data: JSON.stringify(inputData),
contentType: "application/json; charset=utf-8",
success: ... ,
error: ...
});
请求失败,错误 “400(错误请求)”( JavaScript错误)
的SERVERLOG说
Failed to parse request.: java.lang.IllegalArgumentException: Illegal character in query at index 90: http://csepcchb/zedas/rest/json/save?callback=jQuery21103997392114251852_1402577652794&%22{\%22bezeichnung\%22:\%22*42017\%22,\%22elementArt\%22:\%22Aufr%C3%BCsten\%22,\%22beginn\%22:\%2213:15\%22,\%22start\%22:\%22BRBD\%22,\%22ziel\%22:\%22BRBD\%22,\%22ende\%22:\%2201:02\%22,\%22beschreibung\%22:null}%22&_=1402577652796
如果我想也是这个,没有成功
data: inputData
谁能帮我请解决这个问题?
这不是problem.'csepcchb”是一样的为http:/ /本地主机。它是电脑的名字。 – Chris86
其余服务解析数据时出现问题: 无法解析请求:java.lang.IllegalArgumentException:索引90处查询中的非法字符:http:// csepcchb/zedas/rest/json/save?回调= jQuery21103997392114251852_1402577652794&%22 {\%22bezeichnung \%22:\%22 * 42017 \%22 \%22elementArt \%22:\%22Aufr%C3%BCsten \%22 \%22beginn \%22:\%2213 :15 \%22 \%22start \%22:\%22BRBD \%22 \%22ziel \%22:\%22BRBD \%22 \%22ende \%22:\%2201:02 \%22 \%22beschreibung \%22:null}%22&_ = 1402577652796 – Chris86
didn't知道,学到了一些新的感谢;)你确定你返回的JSON对象是正确的吗?你能用json lint验证它吗? – Mike