Я пытаюсь создать защищенную веб-розетку от сервера без головы Unity до клиента WEBGL. Я знаю, что это не поддерживается изначально. Я видел небезопасные примеры, и я получил их для работы в локальных сборках. WebGL выбрасывает ошибки из-за использования https на веб-сайте и небезопасных подключений на серверной части. Другие заставили его работать, но я не могу найти пример "это работает", так что я в растерянности.
Ошибка
DOMException: Failed to construct 'WebSocket': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.
Я пытался следовать Некоторым другимОднако, поскольку я изучаю C # (я из Python) и не имею большого опыта работы с websockets, я не уверен в hpw, чтобы создать безопасный метод.
Сборка Unity: 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 для тестирования.