我正在尝试构建一个从统一无头服务器到 WEBGL 客户端的安全 websocket。我知道它不是本机支持的。我见过不安全的例子,我已经让那些在本地构建中工作。由于在网站上使用 https 和在后端使用不安全的连接,WebGL 会抛出错误。其他人已经让它工作了,但我找不到“它工作”的例子,所以我不知所措。
错误
DOMException: Failed to construct 'WebSocket': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.
我尝试遵循其他一些指南,但是因为我正在学习 C#(我来自 Python)并且在 websockets 方面没有很多经验我不确定在 hpw 上构建安全方法。
统一构建:2019.2
资源:
using System.Collections;
using System.Collections.Generic;
using System.Text;
using UnityEngine;
using WebSocketSharp;
public class WebSocketDemo : MonoBehaviour
{
// Use this for initialization
void Start()
{
Debug.Log("WebSocket Class");
// Create WebSocket instance
using (var ws = new WebSocket("ws://echo.websocket.org"))
{
Debug.Log(ws.ReadyState);
// Add OnOpen event listener
ws.OnOpen += (sender, e) => {
Debug.Log("WS connected!");
Debug.Log("WS state: " + ws.ReadyState);
ws.Send(Encoding.UTF8.GetBytes("Hello from Unity 3D!"));
};
// Add OnMessage event listener
ws.OnMessage += (sender, e) => {
Debug.Log("WS received message: " + e.Data);// Encoding.UTF8.GetString(e.Data));
ws.Close();
};
// Add OnError event listener
ws.OnError += (sender, e) => {
Debug.Log("WS error: " + e.Exception);
};
// Add OnClose event listener
// Connect to the server
ws.Connect();
}
}
// Update is called once per frame
void Update()
{
}
}
老实说,我需要一份带有一些代码片段的讲义。上面的代码适用于 ws 但我不知道客户端和服务器端的 wss 还需要什么。如您所知,我只是联系 echo.websocket.org 进行测试。