2

私のウェブサイトは 1 つのドメイン/サーバー: www.mysite.com にあり、別のサーバー: www.my-other-server.com:8000 で ShareJS を実行しています。

www.mysite.com/index.html

<script src="http://www.my-other-server.com:8000/bcsocket.js"></script>
<script src="http://www.my-other-server.com:8000/share.js"></script>
<script src="http://www.my-other-server.com:8000/textarea.js"></script>

...

<textarea id='sharetext' ></textarea>

<script>
    // get the textarea element
    var elem = document.getElementById("sharetext");

    // connect to the server
    var options = {
        origin: "www.my-other-server.com:8000",
        browserChannel:{cors:"*"}
    }

    var connection = sharejs.open('test', 'text', options, function(error, doc) {
      doc.attach_textarea(elem);
  });

</script>

JS コンソールに次のエラーが表示されます。

XMLHttpRequest cannot load http://www.my-other-server.com:8000/test?VER=8&MODE=init&zx=v44znr3caqea&t=1. Origin http://www.mysite.com is not allowed by Access-Control-Allow-Origin. 

このShareJS GitHubの問題(https://github.com/share/ShareJS/issues/77)は、上記のようにオプションに追加browserChannel:{cors:"*"}することを提案していshareますが、効果がないように見えました...

ここで何をすればいいですか?私の sharejs トラフィックが静的/動的 Web サーバーとは別のサーバー上にあることが重要です。

4

2 に答える 2