如何使用ladon webserver进行交叉脚本调用?

时间:2012-10-05 09:47:22

标签: python json web-services jsonp

我有一个用Python开发的web服务,可以通过Ladon获得。

我使用来自ladon http://ladonize.org/index.php/Python_Example的JSON示例提供的jsonwspclient.js和json2.js。

我现在需要对这个web服务进行一些跨脚本调用,所以如果我理解差异,我需要切换到一些 JSONP 行为。

为了做到这一点,我已经读过我需要添加一些callback函数或类似BTW的东西我不明白应该在哪里成瘾,以及它是否仍然可以与描述兼容通过JSON-WSP加载(可能是某种JSON P -WSP?)

(另外,我应该为Javasript JSON部分切换到类似jquery的东西吗?)

我的第一次尝试以:

结束
SyntaxError: JSON.parse: unexpected end of data

我认为这是由于某些跨域JS限制(不做跨域工作并且不会以此错误结束)

另一种方式是:如何转换JSON-WSP descritpion并从简单的JSON方式调用它,就像所描述的那样here?因为调用client.loadDescription(muURL)来获取描述不能跨域完成。

1 个答案:

答案 0 :(得分:1)

或者您只需确保不必通过在网络服务器上创建反向代理设置来跨站点

1)在IIS上设置反向代理: http://technet.microsoft.com/en-us/library/ee215194(v=ws.10).aspx

你应该有一个匹配规则,如下所示:

<rule name="Reverse Proxy to MV-ID Services" stopProcessing="true">
  <match url="^service/(.*)" />
  <action type="Rewrite" url="http://ladonize.org/python-demos/{R:1}" />
</rule>

2)在Apache2上设置反向代理: http://httpd.apache.org/docs/2.2/mod/mod_proxy.html

在您的apache站点配置中,您应该在站点配置中使用以下内容:

ProxyPass /service http://ladonize.org/python-demos
ProxyPassReverse http://ladonize.org/python-demos