【发布时间】:2014-08-02 19:47:16
【问题描述】:
我喜欢使用 jQuery 将更改的数据发送到 (Java) Rest 服务。该服务不在同一个域中。
好的,这就是 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 (Bad Request)”(JavaScript 错误)
服务器日志说
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
谁能帮我解决这个问题?
【问题讨论】:
标签: jquery ajax request cross-domain jsonp