Chrome Canary (현재 버전 25)를 사용하여 패키지 앱에서 UDP 소켓을 작동 시키려고합니다. 나는 UDP example here이 reference documentation here과 충돌한다는 사실에 상당히 혼란 스럽습니다. 그 함수의 문서화 된 형태와 일치하기 때문에Chrome 패키지 앱 UDP 소켓 작동하지 않음
Uncaught Error: Invocation of form socket.create(string, string, integer, object, function) doesn't match definition socket.create(string type, optional object options, function callback)
의외 : 오류이 선 결과를 사용하여 카나리아에
chrome.socket.create('udp', '127.0.0.1', 1337, { onEvent: handleDataEvent }, ...
:
공식 예는이 줄을 사용합니다. OK (? 내가 예 오래된 것 같다), 그래서 나는 이것을 시도 ...
chrome.socket.create('udp', { onEvent: handleDataEvent }, ...
카나리아는 불평 :
이 지금은이 매개 변수가 undocumented in the reference 특히 때문에, 혼란 스러워요. 그래서 난 그냥이 갈 :Uncaught Error: Invalid value for argument 2. Property 'onEvent': Unexpected property.
chrome.socket.create('udp', {}, ...
을 이제 확인을 생성하지만 connect
에 다음 호출 ...
chrome.socket.connect(socketId, function(result) ...
는 ...이 실패 :
Uncaught Error: Invocation of form socket.connect(integer, function) doesn't match definition socket.connect(integer socketId, string hostname, integer port, function callback)
. .. 놀랍지는 않습니다. 지금부터는 내 코드가 호스트 나 포트를 언급하지 않기 때문에, connect
에 있어야합니다. 그래서 다음과 같은 형식으로 변경합니다 :
chrome.socket.connect(socketId, address, port, function (result) ...
마지막으로 소켓에 연결하고 쓸 수 있습니다. 그러나 이것은 독서를 포함하지 않습니다.
- 누군가가 저에게 &을 보낼 수있는 UDP 기반의 작동 예제를 표시 할 수 있습니까?
- 예제의 onEvent 핸들러가 작동하지 않아서 데이터를 수신하는 방법은 무엇입니까? 요청하지 않고 도착하자마자 주문형 데이터를 수신하도록하려면 어떻게해야합니까?