首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过mimic.js实现CORS XMLRPC

通过mimic.js实现CORS XMLRPC
EN

Stack Overflow用户
提问于 2012-07-07 03:36:23
回答 1查看 888关注 0票数 0

场景:我有一个需要从Javascript进行XMLRPC调用的网页,并使用mimic.js进行调用。XMLRPC服务器是用python编写的,基于SimpleXMLRPCServer。

当网页和服务器在同一台机器上时,一切都很好。如果页面来自不同的机器,我就会遇到CORS问题。我已经设法知道XMLRPC调用已经到达服务器,但是页面仍然在抱怨:

代码语言:javascript
复制
XMLHttpRequest cannot load http://server.machine.com:8888/. Origin http://page.machine.com is not allowed by Access-Control-Allow-Origin.
(mimic.js:8) NETWORK_ERR: XMLHttpRequest Exception 101: A network error occurred in synchronous requests.

这是我必须添加到我的服务器的SimpleXMLRPCRequestHandler子类中的内容:

代码语言:javascript
复制
        def do_OPTIONS(myself):
            myself.send_response(200)
            myself.send_header("Access-Control-Allow-Origin", "*")
            myself.send_header("Access-Control-Allow-Headers","Content-Type")
            myself.end_headers()
            myself.wfile.write("OK") 

我的理解是,当服务器在不同的机器上时,我不需要更改任何关于进行XMLRPC调用的内容(除了指定新地址之外)。

所以(终于!)问题是:我遗漏了这块拼图的哪一块?如果答案很简单,比如“您需要一个不同的XMLRPC客户端库”,那么有关替代方案的建议将是最受欢迎的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-12 01:13:28

似乎还需要将ACA-Origin & ACA-Headers头添加到来自POST请求(实际的XMLRPC方法调用)的响应中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11368640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档