2017-11-05 16 views
0

何かを手助けしてください: プロダクションでwebsockets-snapを実装したいのですが、アドレスを取得しないようです。私は、次のコードを持っている:Snapが付いたWebSocketはプロダクションではバインドされません

the js inside index.html file

function createChatSocket() { 
    if(window.location.host == '') { 
     /* Running on localhost */ 
     return new WebSocket('ws://35.197.208.147/ws/console/'); 
    } else { 
     /* Running in "production" */ 
     return new WebSocket('wss://jaspervdj.be/websockets/example/chat/'); 
    } 
} 

window.location.hostは、それがどんなに私が何をすべきか、IP

the server.hs file

app :: Snap() 
app = Snap.route 
    [ ("",    Snap.ifTop $ Snap.serveFile "./shorts/index.html") 
    , ("console", console) 
    ] 
.... 
.... 
.... 
-------------------------------------------------------------------------------- 
console :: Snap() 
console = do 
    state <- liftIO $ newMVar newServerState 
    WS.runWebSocketsSnap $ application state 

されていない、空ではないが、それは常に私のサーバーではなくwss://jaspervdj.be/websockets/example/chat/にあるウェブソケットを返します。私に何ができる?

ありがとうございました

答えて

1

これはJavaScriptの問題であり、ハスケルの問題ではありません。 window.location.hostとなることはありません。は空です。したがって、あなたはいつもjaspervdj.beへのwebsocketで終わります。

+0

ええ、ありがとう、私のせいで、それは深夜だった。しかし、もし私が他のものを消去しても、唯一のIPは動作しません。私は別の解決策を試し、戻ってくる。ありがとう –

関連する問題