与我的网站整合Kaazing有问题:无法向x发送消息



我一直在尝试将Kaazing jms版本与我的。net网站和activemq消息代理集成:

无法发送消息到http://www.xgateway.com:8001。收件人有来源http://www.x.com。

当我试图建立一个javascript客户端是由我的asp.net网站托管试图连接到kaazing网关。

我知道我已经设置好了,因为我可以去www.xgateway.com:8001,我可以浏览所有的文档并运行演示。我已经运行的股票报价演示和观看它完美地工作。所以所有设置看起来都没问题。

现在的问题是,我也有我的asp .net网站托管IIS 7在同一台机器上。我试图建立javascript客户端托管在我的。net网站(端口80)与kaazing网关连接。但我一直得到上述交叉原点误差

在我的客户端,我引用StompJms.js指示。我有activemq设置正确,工作以及消息代理。所有的演示工作证明一切都是正确的。

我也按照文档中的说明采取了这些步骤:


复制GATEWAY_HOME/lib/client/javascript/PostMessageBridge.html文件并从源源web服务器(http://www.example.com)提供它;例如在http://www.example.com/bridge/PostMessageBridge.html。注意:你必须确保PostMessageBridge.html文件与web服务器托管在相同的源(相同的方案,主机和端口)上。

将以下标签(如第2行和第3行所示)添加到主应用程序页面的部分:

<head>
<meta name="kaazing:postMessageBridgeURL"
      content="http://www.x.com/PostMessageBridge.html" >
.
.
.
</head>

,但仍然得到错误。我还错过了什么?

因为你的。net应用程序和你的websocket网关使用的端口号是不同的,它们被认为是独立的站点。因此,您需要为您的服务指定跨站点约束。

下面是需要添加到gateway-config.xml中的示例代码片段:

<service>
  <accept>ws://localhost:8001/remoteService</accept>
  <connect>tcp://localhost:61613</connect>
  <type>stomp.proxy</type>
  <auth-constraint>
    <require-role>AUTHORIZED</require-role>
  </auth-constraint>
  <cross-site-constraint>
    <allow-origin>http://localhost:8000</allow-origin>
  </cross-site-constraint>
</service>

您可以在这里找到有关该主题的详细文档。

相关内容

  • 没有找到相关文章

最新更新