2017-03-08 29 views
1

wss://経由でWebSocketに接続しようとしたときにこのエラーが発生しますが、ws://で正常に動作するようです。接続を行うときにwsを使用する必要がありますので、あなたのサーバーのみのHTTP接続を待機しているWebSocket接続に失敗しました:接続確立エラー:net :: ERR_SSL_PROTOCOL_ERROR

エラー

WebSocket connection failed: Error in connection establishment: net::ERR_SSL_PROTOCOL_ERROR 

コード

package main 

import (
    "fmt" 
    "log" 
    "net/http" 
    //"encoding/json" 
    "github.com/gorilla/websocket" 
) 

var clients map[*websocket.Conn]*Client 

var upgrader = websocket.Upgrader{ 
    CheckOrigin : func(r *http.Request) bool{ 
     return true 
    }, 
} 

type Client struct{ 
    session_id string 
    block_id uint 
    module  string 
} 

func main(){ 
    var port uint = 8000 

    http.HandleFunc("/", handleConnections) 

    log.Printf("Websocket server started on: %d", port) 
    err := http.ListenAndServe(fmt.Sprintf(":%d", port), nil) 
    if err != nil { 
     log.Fatal("ListenAndServe: ", err) 
    } 
} 

func handleConnections(w http.ResponseWriter, r *http.Request){ 
    // Upgrade initial GET request to a websocket 
    ws, err := upgrader.Upgrade(w, r, nil) 
    if err != nil { 
     log.Print(err) 

     return 
    } 

    defer ws.Close() 

    log.Print("Connection established to IP: ", r.RemoteAddr) 

    ... 
} 

答えて

1

wssは本当にただRFC 6455

A |wss| URI identifies a WebSocket server and resource name and 
indicates that traffic over that connection is to be protected via 
TLS (including standard benefits of TLS such as data confidentiality 
and integrity and endpoint authentication). 
からHTTPS(TLS)

経由で提供されるのWebSocket接続を意味し、 "セキュアのWebSocket" であります

関連する問題