我有一点问题: 我正在开发一个jQuery Mobile应用程序,我需要对休息服务进行ajax调用。 我使用servlet动态创建页面。
我尝试对其余网址进行ajax调用:
http://localhost:8181/myRestServicePath/func?key=value
来自以下网址的网页:
http://localhost:8080/Mypage
但是我从浏览器中收到了交叉错误。
所以我尝试执行此调用,使用doPost()方法传递Java servlet。
现在,我打算从
进行ajax调用 http://localhost:8080/Mypage
为:
http://localhost:8080/myServletPath/func?key=value
这个servlet应该将POST请求重定向到我的RestService:
http://localhost:8181/myRestServicePath/func?key=value
如何执行此重定向?
答案 0 :(得分:0)
有几种方法可以实现这一目标。我只是分享两个公共可能性如下。
对于POST请求: - 您需要在servlet中使用Apache HTTPClient将请求发送到Web服务并获得响应。收到回复后,您可以将回复发送到您的页面。
对于GET请求: -
您不需要额外的servlet来进行跨域请求。您可以使用JSONP
jQuery示例:
$.ajax({
url:"http://localhost:8080/myServletPath/func?key=value",
dataType: 'jsonp', // Notice! JSONP <-- P (lowercase)
success:function(json){
// do stuff with json (in this case an array)
alert("Success");
},
error:function(){
alert("Error");
},
});