순수 Javascript에서 Websocket을 사용하고 있으며 Websocket 함수에 Promise를 구현하고 싶습니다. 나는 어떤 오류도 내지 않지만 Promise는 작동하지 않습니다.Javascript - Websocket에서 약정 사용
다음 코드를 사용하여 소켓 서버에 성공적으로 연결할 수 있지만 경고 출력은 항상 "실패"되어 있으므로 약속을 건너 뛰었습니다.
누군가이 경우이 문제가 무엇인지 압니까? Ps : 최신 Chrome 브라우저와 최신 Mozilla Firefox 브라우저에서 테스트를 수행했으며이 예제에서는 몇 가지 기본적인 검사/오류 처리를 생략했습니다.
function Connect()
{
server = new WebSocket('mysite:1234');
server.onopen = (function()
{
return new Promise(function(resolve, reject)
{
if (true)
{
resolve();
}
else
{
reject();
}
});
}).then = (function()
{
alert('succeeed');
}).catch = (function()
{
alert('failed');
});
}
당신은 당신이 성공적으로 연결할 수 어떻게 생각 하죠? – bytesized
FYI : 귀하의 코드는'server.onopen'을 마지막 함수 (경고가 실패한 함수)로 설정합니다 - 당신은'.then'과'.catch'를 무엇이든 바꿀 수 있고 여전히 똑같이 할 것입니다 ... 효과적으로 catch = ({hello : 'world'})'... x는 {hello : 'world'}'가 될 것이고 중간 객체는 '.then' 및'.catch' 속성이 버려졌습니다. –
설명 해 주셔서 감사합니다. – Piet