2012-10-02 41 views
0

我正在寫一個(有點)使用小程序(遊戲)的分佈式應用程序。它深入實施,所以設計或多或少是固定的。Chrome使用直接的HTTP套接字/不是TCP的

但是,當我使用Java套接字(至少在Chrome中)連接到對等端時,它嘗試連接到http://。爲什麼會發生?

它實際上是成功連接,但是,寫入數據似乎也很好。閱讀失敗(主要是因爲它期待HTTP有效載荷)。這是爲什麼發生?有沒有辦法改變它? (該應用程序尚未在其他瀏覽器中運行)。

代碼段:

private IoSession(InetSocketAddress peerAddr, 
        IoHandlerAdapter handler, 
        boolean synch, 
        int connectTimeOut) 
throws IOException { 
    this.handler = handler; 
    try { 
     mySocket = new Socket(peerAddr.getAddress(), peerAddr.getPort());  
     System.out.println("Socket is done to " + peerAddr.getPort()); 
+0

你能告訴我們你的代碼,因爲'新的套接字(主機名,端口);'不這樣做? –

+0

private IoSession(InetSocketAddress peerAddr,IoHandlerAdapter handler,boolean synch,int connectTimeOut)throws IOException {this.handler = handler; 嘗試mySocket = new Socket(peerAddr.getAddress(),peerAddr.getPort()); System.out.println(「Socket is done to」+ peerAddr.getPort()); – user1711343

+0

println說。但在此之前,它會在小應用程序的java控制檯中顯示「連接http:// ipaddr:port /」 – user1711343

回答

0

好吧,我想這是解決。我明白沒有HTTP套接字。問題在別處,我可以解決它。它與HTTP無關。至少在Chrome中,該消息在Java控制檯中是錯誤的。