Web 消息传递彗星跨域贝叶 webmsgServlet.



我正在使用订阅SIBus jms Topic的phonegap编写移动应用程序。

首先,我能够在配置后运行演示,但我无法从不同的域运行它,因为应用程序必须从服务器在外部域上运行。

我在跨域 ajax 调用 Web 服务时遇到了很多问题,解决方案是将标头更改为 header("Access-Control-Allow-Origin", "*");我正在研究如何解决此问题以将标头更改为传入请求

dojo.require("dojox.cometd");
   dojo.addOnLoad(function(){
      dojox.cometd.init("http://localhost:9080/ClientWeb/webmsgServlet");
      dojox.cometd.subscribe("/T.Frs", window, "display");
     }
   );
   function display(msg) {
   console.log(msg);
       alert("Message " + msg.data.test);
   }

看看 Jetty 的 CrossOriginFilter,它是一个可移植的过滤器,你可以在任何实现 CORS 规范的 servlet 容器中运行,允许你无缝地访问跨源资源。

CometD 在演示中默认提供此过滤器,因此您可以查看那里的配置方式,或查看 CometD 参考第 5.4.1.3 节。

最新更新