使用easyXDM进行跨域发布

时间:2012-03-21 11:10:14

标签: ajax cross-domain

我正在努力让跨域帖子发挥作用。我知道我可以轻松地使用jsonp进行GET,但我对如何实现POST请求感到困惑。

我查了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);
        });

但这没有任何作用。

1 个答案:

答案 0 :(得分:0)

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

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

如果您不想使用easyXDM,您可以通过添加以下内容轻松设置服务器以接受所有请求:( IE&lt; 8不支持)

Header set Access-Control-Allow-Origin *
Header add Access-Control-Allow-Headers X-Requested-With
Header add Access-Control-Allow-Headers X-Request