需要用到webSocket,所以搜集了一下使用方法,總結下自己的經(jīng)驗
首先要導入webSocket的包,git下載地址><meta charset="utf-8" />
。
Websocket提供了調用方法的,你只需要創(chuàng )建一個(gè)websocket對象,然后調用它的方法就行了,如下示例:var wsServer = “ws://192.168.1.226:4998/”;websocket = new WebSocket(wsServer);然后調用方法:websocket.onopen = function (evt) { onOpen(evt) };websocket.onclose = function (evt) { onClose(evt) };websocket.onmessage = function (evt) { onMessage(evt) };websocket.onerror = function (evt) { one rror(evt) };方法具體實(shí)現:function onOpen(evt) {自己代碼;}function onClose(evt) {自己代碼;}function onMessage(evt) {自己代碼;}function one rror(evt) {console.log('websocket Error!”);}。
WEB Socket屬性:屬性說(shuō)明Socket.readyStatereadyState的代表的ReadOnly屬性的連接狀態(tài)。
它可以有以下值:一個(gè)0值表示該連接尚未建立。值為1表示連接建立和溝通是可能的。
值為2表示連接是通過(guò)將結束握手。值為3表示連接已關(guān)閉或無(wú)法打開(kāi)。
Socket.bufferedAmount讀屬性的bufferedAmount代表文本的字節數,utf - 8的排隊使用send()方法。WEB Socket事件:事件處理程序說(shuō)明openSocket.onopen此事件發(fā)生在套接字建立連接。
messageSocket.onmessage此事件發(fā)生時(shí),客戶(hù)端收到來(lái)自服務(wù)器的數據。errorSocket.onerror此事件發(fā)生時(shí)有任何通信錯誤。
closeSocket.onclose此事件發(fā)生在連接關(guān)閉。WEB Socket方法:方法說(shuō)明Socket.send()send(data)方法用來(lái)連接傳輸數據。
Socket.close()close()方法將被用于終止任何現有的連接。
這里第一個(gè)參數是指要連接的URL,第二個(gè)參數是可選的,如果需要的話(huà),則是指定一個(gè)的服務(wù)器支持的協(xié)議。
WEB Socket屬性:屬性說(shuō)明Socket.readyStatereadyState的代表的ReadOnly屬性的連接狀態(tài)。它可以有以下值:一個(gè)0值表示該連接尚未建立。
值為1表示連接建立和溝通是可能的。值為2表示連接是通過(guò)將結束握手。
值為3表示連接已關(guān)閉或無(wú)法打開(kāi)。Socket.bufferedAmount讀屬性的bufferedAmount代表文本的字節數,utf - 8的排隊使用send()方法。
WEB Socket事件:事件處理程序說(shuō)明openSocket.onopen此事件發(fā)生在套接字建立連接。messageSocket.onmessage此事件發(fā)生時(shí),客戶(hù)端收到來(lái)自服務(wù)器的數據。
errorSocket.onerror此事件發(fā)生時(shí)有任何通信錯誤。closeSocket.onclose此事件發(fā)生在連接關(guān)閉。
WEB Socket方法:方法說(shuō)明Socket.send()send(data)方法用來(lái)連接傳輸數據。Socket.close()close()方法將被用于終止任何現有的連接。
需要用到webSocket,所以搜集了一下使用方法,總結下自己的經(jīng)驗首先要導入webSocket的包,git下載地址/square/SocketRocket導入這個(gè)包,然后配置環(huán)境,導入需要用的框架libicucore.dylib//這個(gè)現在Xcode里沒(méi)有,需要自己找到資源后手動(dòng)添加CFNetwork.frameworkSecurity.frameworkFoundation.framework。
要記得添加pch文件。然后編譯,工程運行沒(méi)有錯誤,進(jìn)行下一步在用到的ViewController里包含一下頭文件1.2.3.一個(gè)測試用的接口ws://echo.websocket.org4.必須實(shí)現的代理方法- (void)webSocketDidOpen:(SRWebSocket *)webSocket;- (void)webSocket:(SRWebSocket *)webSocket didFailWithError:(NSError *)error;- (void)webSocket:(SRWebSocket *)webSocket didReceiveMessage:(id)message;- (void)webSocket:(SRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean;- (void)webSocket:(SRWebSocket *)webSocket didReceivePong:(NSData *)pongPayload;5,在第一個(gè)代理方法里發(fā)送請求[_webSocket send:@"test success"];在第三個(gè)代理方法里打印數據在第四個(gè)代理方法里置為nil_webSocket.delegate = nil;完成。
您好,很高興能幫助您先裝websocket服務(wù)器客戶(hù)端【java】kaazing websocket getway【python】mod_pywebsocket【javascript】node.js回答2. WebSocket JavaScript 接口定義 [Constructor(in DOMString url, in optional DOMString protocol)] interface WebSocket { readonly attribute DOMString URL; // ready state const unsigned short CONNECTING = 0; const unsigned short OPEN = 1; const unsigned short CLOSED = 2; readonly attribute unsigned short readyState; readonly attribute unsigned long bufferedAmount; //networking attribute Function onopen; attribute Function onmessage; attribute Function onclose; boolean send(in DOMString data); void close(); }; WebSocket implements EventTarget;其中 URL 屬性代表 WebSocket 服務(wù)器的網(wǎng)絡(luò )地址,協(xié)議通常是”ws”,send 方法就是發(fā)送數據到服務(wù)器端,close 方法就是關(guān)閉連接。
除了這些方法,還有一些很重要的事件:onopen,onmessage,onerror 以及 onclose。下面是一段簡(jiǎn)單的 JavaScript 代碼展示了怎樣建立 WebSocket 連接和獲取數據:3. 建立 WebSocket 連接的實(shí)例 JavaScript 代碼 var wsServer = 'ws://localhost:8888/Demo'; var websocket = new WebSocket(wsServer); websocket.onopen = function (evt) { onOpen(evt) }; websocket.onclose = function (evt) { onClose(evt) }; websocket.onmessage = function (evt) { onMessage(evt) }; websocket.onerror = function (evt) { one rror(evt) }; function onOpen(evt) { console.log("Connected to WebSocket server."); } function onClose(evt) { console.log("Disconnected"); } function onMessage(evt) { console.log('Retrieved data from server: ' + evt.data); } function one rror(evt) { console.log('Error occured: ' + evt.data); }。
需要用到webSocket,所以搜集了一下使用方法,總結下自己的經(jīng)驗首先要導入webSocket的包,git下載地址/square/SocketRocket導入這個(gè)包,然后配置環(huán)境,導入需要用的框架libicucore.dylib//這個(gè)現在Xcode里沒(méi)有,需要自己找到資源后手動(dòng)添加CFNetwork.frameworkSecurity.frameworkFoundation.framework。
要記得添加pch文件。然后編譯,工程運行沒(méi)有錯誤,進(jìn)行下一步在用到的ViewController里包含一下頭文件1.2.3.一個(gè)測試用的接口ws://echo.websocket.org4.必須實(shí)現的代理方法- (void)webSocketDidOpen:(SRWebSocket *)webSocket;- (void)webSocket:(SRWebSocket *)webSocket didFailWithError:(NSError *)error;- (void)webSocket:(SRWebSocket *)webSocket didReceiveMessage:(id)message;- (void)webSocket:(SRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean;- (void)webSocket:(SRWebSocket *)webSocket didReceivePong:(NSData *)pongPayload;5,在第一個(gè)代理方法里發(fā)送請求[_webSocket send:@"test success"];在第三個(gè)代理方法里打印數據在第四個(gè)代理方法里置為nil_webSocket.delegate = nil;完成。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:2.917秒