0
我有兩個Web應用程序託管在服務器上。從一個我試圖做$ .post到第二個應用程序(spring mvc3)。我能夠成功地擊中第二個應用程序的url,但我沒有得到ajax調用的迴應。如何在兩個應用程序之間使用jquery ajax post調用spring mvc3?
應用1 JS代碼(HTTP://本地主機:7777/APP1/test.html的) -
var serialisedFormData = $("form").serialize();
$.post("http://localhost:8080/app2/doSomething", serialisedFormData, function (data) {
alert("job done");
}, "json");
應用2的Java代碼 -
@RequestMapping(value = "/doSomething")
public @ResponseBody String doSomething(HttpServletRequest request,
@RequestParam("d") String data) {
try {
... do something here ...
return "done";
}
catch (Exception e) {
logger.debug("Exception occured when doing something", e);
return "failure";
}
}
沒有足夠的信息來幫助你。當您在瀏覽器外執行請求時,例如在命令行中使用'curl',什麼'POST/app2/doSomething'返回?你怎麼知道你沒有得到迴應 - 你的迴應處理程序似乎只是發出警報。瀏覽器的開發人員工具向您顯示對'/ app2/doSomething'的HTTP調用返回的響應是什麼? –
它們是否部署在同一個應用程序服務器實例中並具有相同的域 - 否則可能僅僅是瀏覽器阻止了跨域請求。 –
也許你的'post'調用丟失了「.html」? '$ .post(「http:// localhost:8080/app2/doSomething.html ...' – GriffeyDog