2012-03-21 115 views
1

我試圖讓跨域發佈工作。我知道我可以輕鬆使用jsonp進行GET,但是我堅持如何實現POST請求。使用easyXDM跨域發佈

我查了easyXDM,但據我瞭解,服務器還需要某種easyXDM實現,形式爲「cors」文件或其他東西。

這是真的嗎?因此,如果服務器不支持它,沒有辦法做一個跨域後(沒有設置代理,這是)

我只有本地文件沒有嘗試過自己:

<script type="text/javascript"> 
     var xhr = new easyXDM.Rpc(/** The channel configuration*/{ 
      remote: "name.html" 
     }, { 
      remote: { 
       request: {} // request is exposed by /cors/ 
      } 
     }); 
    </script> 

而且然後做一個這樣的請求:

xhr.request({ 
      url: "http://other.domain.be", 
      method: "POST", 
      data: {NEWS: "true", IMMO: "true" } 
     }, function(response) { 
      alert(response.status); 
      alert(response.data); 
     }); 

但這沒有做什麼。

回答

0

是的,easyXDM.Rpc需要使用服務器cors url進行初始化。

xhr = new easyXDM.Rpc({remote: "http://url/cors"}, {remote:{request:{}}}); 

如果你不想使用easyXDM,您可以輕鬆地設置服務器接受通過將所有請求:

Header set Access-Control-Allow-Origin * 
Header add Access-Control-Allow-Headers X-Requested-With 
Header add Access-Control-Allow-Headers X-Request 
(不通過IE < 8支持)