为什么会当试图连接到通过WebSocket的这个错误wss://
,但似乎很好地工作ws://
?
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)
...
}
您的服务器仅侦听HTTP连接,因此ws
在建立连接时应使用。wss
是“ WebSocket安全”,实际上只是表示通过HTTPS(TLS)提供服务的WebSocket连接
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).
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句