JS에서 Cordova로 WebSocket을 구현하려고합니다. 나는 플러그인을 사용하지 않는다. JS의 네이티브 웹 소켓을 사용한다. 기본적으로, 내 애플 리케이션은 백엔드에 연결하고, 메시지를 보낸 다음 응답을 기다린다. Chrome/Firefox에서는 정상적으로 작동하지만 내 iPad에 설치하면 프런트 엔드 웹 소켓이 결코 백엔드에 연결되지 않습니다.코드 패드가있는 웹 소켓이 ipad에서 작동하지 않습니다.
이<meta http-equiv="Content-Security-Policy" content="default-src * gap: file: ws: wss: ; style-src 'self' 'unsafe-inline'; img-src 'self' data: ; script-src * 'unsafe-inline' 'unsafe-eval'; connect-src 'self' ws: ;">
웹 소켓은 다음과 같이 생성 및 사용 :
ws = new WebSocket('ws://backEndIP:port/')
ws.send('/skeleton/last')
ws.onmessage = function (event) {
resolve(event.data);
}
내가 누락 될 수 있는지 모르는
그래서 난 내 메타 태그에 일부 콘텐츠 정책을 추가하려 .편집 나는 Config.xml의 <access origin='*' allows-arbitrary-loads-for-media='true' allows-arbitrary-loads-in-web-content='true' allows-local-networking='true' />
추가 있지만 여전히 작동하지 않습니다.
내가 내 백엔드 aswell의 IP를 추가 : ''여러 플러그인을 시도했지만 여전히 작동하지 않습니다 ... 웹 소켓이 Safari에서 제대로 작동하고 있으므로 테스트를 거쳤습니다. 나는 정말로 거기에서 길을 잃는다 –
아마 방화벽을 무능하게한다? 사용 된 포트가 열려 있는지 확인하십시오. 장치를 연결할 수 있는지 테스트하려면 서버를 ping하십시오. –
인터넷 브라우저에서 응용 프로그램을 미리 볼 때 웹 소켓이 작동 중이므로 서버가 정상적으로 작동합니다. 그래서 나는 항구가 너무 열려 있다고 확신합니다. iPad에 방화벽이 없습니다 (지금 확인) –