2011-03-06 102 views
1

我正在为用户编写一些接口来收集数据并发送到服务器。出于各种原因我去了GWT。gwt:使远程呼叫失败 - sop?

现在,当我尝试调用我的服务器:

String url = "http://127.0.0.1:3000/data/collection.xml"; 
RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(url)); 

Request request = builder.sendRequest(data, new RequestCallback() {  

     public void onResponseReceived(Request request, Response response) { 

       if (200 == response.getStatusCode()) { 
        result.setText("SUCCESS!"); 
       } else { 
        result.setText("ERROR with code: " + response.getStatusCode()); 

我的服务器收到请求(有一些数据的POST),但我得到错误代码为:(!)0所有的时间。我想这与SOP有关。我读了很多关于这个SOP的内容,但现在我更加困惑了。我试图按照this tutorial但这是使用不同的方法(我设法适应它只发出GET调用,但返回对象始终为空)。

任何人都可以指向正确的方向吗?谢谢

+0

首先安装Firebug来监控Firefox网络连接,并在浏览器上请求和响应,然后让您阅读http://code.google.com/webtoolkit/doc/latest/tutorial/Xsite.html#design? – 2011-03-07 01:01:56

+0

我相信你根本无法这样做! – 2011-03-07 01:16:08

+0

是的。我的调查显示它只有在目标将Allow-Origin-something HTTP标头设置为* ....时才起作用。JSONP是另一种选择 – faboolous 2011-03-15 10:34:36

回答

2

由于SOP,您无法从另一台服务器调用任何服务。你可以做什么,你可以使用你的原始服务器作为其他服务器的代理..我建议你阅读this tutorial