? ????? WeChat ??? WebSocket ???? ??? ?? ?? ???? ?? ???? ??? ????? ??? ? ??? ?????.
WebSocket??(??? ??)
WeChat? WebSocket ?????? ????? HTML5? WebSocket? ???? ??? Socket?? ?????. in B/S ????? ????, ????? ?? ?? ??? ??? ?????.
?? ?????? ??? WebSocket? ?? ???? ????? ?? ?? ?? ???? ?? ???? ???????. WebSocket? ?? ? ?? ??? ??? ?????.
WebSocket ????
WebSocket? Ajax? ??
WebSocket? ??? ? ?? ???? ???? ?? ?????, Ajax? ??? ?? ??? ???? ???, ??? ??? ?? ?? ?? ???? ?? ?? HTTP ??? ???? ????. ?? ?? HTTP ??? ???? ???? ???? ?? ??? ???? ???? ?????. ??? ?? ??? ?????? ???? ?? ??? ???(?????) ?? ???? ?????.
WebSocket? ?? ?? ??? ??? ? ????. WebSocket? ?????? ?? ??? ??? ????, ??? ? ?? ????, ??? ???? ??? ???? ????? ?? ? ???? ????? ??? ? ????. ?????? WebSocket? ??? ? WebSocket? ?? ?? ?????.
WebSocket ???? ??
WebSocket ??? http ?? https? ???? ?? ws ? wss? ?????. ??? ??? ?? ??? ????.
?: ?? ?? ??? ??
???? ?? ??? ????? ?? ?? ?????. ?? ???? wxchart? ?????.
wxchart ???? ??:
?????? ???????. ????? ???????.
?? ??? ??:
wxchart.js? ???/stock/? ????.
stock.wxml ??:
stock.js ??:
// pages/stock/stock.js //加載插件 var wxCharts = require('wxcharts.js'); Page({ data: {}, onLoad: function (options) { //建立連接 wx.connectSocket({ url: "ws://localhost:12345", }) //連接成功 wx.onSocketOpen(function() { wx.sendSocketMessage({ data: 'stock', }) }) //接收數(shù)據(jù) wx.onSocketMessage(function(data) { var objData = JSON.parse(data.data); console.log(data); new wxCharts({ canvasId: 'lineCanvas',//指定canvas的id animation: false, type: 'line',//類型是線形圖 categories: ['2012', '2013', '2014', '2015', '2016', '2017'], series: [{ name: '交易量', data: objData,//websocket接收到的數(shù)據(jù) format: function (val) { if (typeof val == "string") { val = parseFloat(val); } return val.toFixed(2) + '萬(wàn)元'; } }, ], yAxis: { title: '交易金額 (萬(wàn)元)', format: function (val) { return val.toFixed(2); }, min: 0 }, width: 320, height: 200 }); }) //連接失敗 wx.onSocketError(function() { console.log('websocket連接失?。?amp;#39;); }) }, })
??? WebSocket? ??? ws://localhost???. ??? 12345???. ??? ??? ? ??? ??? ???? ??? ?? ????? ??? ??? ?????.
WebSocket? ???? PHP? ??????. ????? ??? ??????.
<?php include 'WebSocket.php'; class WebSocket2 extends WebSocket{ public function run(){ while(true){ $socketArr = $this->sockets; $write = NULL; $except = NULL; socket_select($socketArr, $write, $except, NULL); foreach ($socketArr as $socket){ if ($socket == $this->master){ $client = socket_accept($this->master); if ($client < 0){ $this->log("socket_accept() failed"); continue; }else{ $this->connect($client); } } else{ $this->log("----------New Frame Start-------"); $bytes = @socket_recv($socket,$buffer,2048,0); if ($bytes == 0){ $this->disconnect($socket); }else{ $user = $this->getUserBySocket($socket); if (!$user->handshake){ $this->doHandShake($user, $buffer); }else{ $buffer = $this->unwrap($user->socket, $buffer); //請(qǐng)求為stock時(shí),向通道內(nèi)推送數(shù)據(jù) if ($buffer == 'stock') { $arr = array(); //模擬數(shù)據(jù) for ($i=0; $i < 6; $i++) { $arr[] = rand(1, 100) / 100; } $this->send($user->socket, json_encode($arr)); } } } } } } } } $s = new WebSocket2('localhost', 12345); $s -> run();
PHP?? WebSocket? ???? ?? ?? ??????. Node.js? ?? ??? Node?? ??? ? ????. .js. Node.js? ??? WebSocket? ???? ? ?? ?????.
?? ?:
WeChat WebSocketAPI ???? ??
wx.connectSocket(OBJECT)
[tr] ???? ?? ?? ??[/tr]
url | String | 是 | 開(kāi)發(fā)者服務(wù)器接口地址,必須是 wss 協(xié)議,且域名必須是后臺(tái)配置的合法域名 |
data | Object | 否 | 請(qǐng)求的數(shù)據(jù) |
header | Object | 否 | HTTP Header , header 中不能設(shè)置 Referer |
method | String | 否 | 默認(rèn)是GET,有效值為: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù) |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù) |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行) |
wx.onSocketOpen(CALLBACK)
WebSocket ?? ?? ???? ?????.
wx.onSocketError(CALLBACK)
WebSocket ??? ?????.
wx.sendSocketMessage(OBJECT)
WebSocket ??? ?? ???? ????? ?? wx.connectSocket? ??? ?? wx.onSocketOpen ?? ?? ???? ???.
[tr] ???? ?? ?? ??[/tr]
data | String/ArrayBuffer | 是 | 需要發(fā)送的內(nèi)容 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù) |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù) |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行) |
wx.onSocketMessage(CALLBACK)
WebSocket?? ??? ??? ??? ?? ????.
[tr] ???? ?? ??[/tr]
data | String/ArrayBuffer | 服務(wù)器返回的消息 |
wx.closeSocket()
WebSocket ??? ????.
wx.onSocketClose(CALLBACK)
WebSocket ??? ?????.
localhost? ???
? ????? localhost? ?? ??? ??????. ?? ?? ??????? ???? ?? ?????. ?? ??.
? ??? WeChat Mini ???? WebSocket ???? ?? ? ?? ? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











Xianyu? ?? WeChat ?? ????? ??? ???????. ?? ??????? ??? ???? ???? ???/???? ????, ?? ?? ? ?? ??, ?? ?? ?? ? ? ????. ?????? Xianyu WeChat mini? ?????? ????? ?????? Xianyu WeChat ???? ??? ?????? ??: Xianyu, ?? ??, ?? ??, ???? ? ???. 1. ?? ??????? ?? ??? ??, ??? ???? ?? ???/????? ??????, ?? ?? ? ?? ??, ?? ?? ?? ?? ? ? ????. 2. ?? ???? ????? ??? ????? ????. ?? ??, ???, ? 5?? ?? 3. ????? ???? ?? WeChat ??? ????? ???.

WeChat ?? ?????? ?? ?? ?? ?? ?? ??? ??????? ??? ?? ???? ??? ??? ??? ??? ??? ?? ??? ?? ??? ???? ?? ?? ? ???? ????. WeChat ?? ??????? ?? ?? ??? ??? ? ?? ????? ?? ???? ???? ?? ?? ??? ?????. ? ????? WeChat ?? ?????? ??? ?? ??? ???? ??? ???? ???? ?? ??? ?????. ?? WeChat ???? ??? ?? ??? ???? ???? ???? ???? ???. ????? ??? ????? ??? ? ????.

WeChat ?? ?????? ???? ?? ??? ????? ???? ?? ??? ?????. ??? ???? ??? ?? WeChat ?? ????? ??? ??? ??? ??? ???? ?? ? ?? ???? ??? ?? ???? ??????. WeChat ?? ????? ?????. WeChat ?? ???? ??? ?? APP ???? ???? ???? ?? ?? ??? ???? ???. WeChat ?? ???? ???? ???? ??? ???? UI ?? ???, ? ?? ??? ??? ?????. ? ????? WeChat ????? ???? ?? ??? ???? ??? ??? ???? ???? ??? ?????.

Xianyu? ?? WeChat ?? ????? ????? ?? ??? ?? ???? ??? ? ?? ??? ???? ???? ?? ??? ???????. ?? ??????? ??? ???? ?? ??? ?? ???? ??? ? ???, ???? ? ?? ??, ??? ??? ??? ? ????. ???? WeChat ?? ?????? Xianyu? ??? ????? ????? ? ???? ?????? ?? ?? ??? ?????. ?? ?? ???? ? ??? ?? ?? ?????! Xianyu WeChat ???? ??? ?????? ??: Xianyu, ?? ??, ?? ??, ???? ? ???. 1. ?? ??????? ?? ??? ??, ??? ???? ?? ???/????? ??????, ?? ?? ? ?? ??, ?? ?? ?? ?? ? ? ????. 2. ?? ???? ????? ??? ????? ????. ?? ??, ??? ? 5?? ??.

WeChat ???? ?? ??? ??? ?????. ??? ???? ???? WeChat ???? ???? ?? ???? ?? ??? ?????. WeChat ?? ????? ??? ?????? ????? ??? ?? ??? ??? ??? ??? ??? ??? ?? ??? ?????. ? ????? WeChat ????? ??? ??? ??? ???? ??? ???? ???? ?? ??? ?????. 1. ?? ?? ?? ??? ???? ?? WeChat ??? ??? ?????? ???? WeChat ???? ???? ???. ??? WeChat? ???? ???.

WeChat ???? ???? ??? ?? ??? ????. WeChat ???? ?? ? ??? ???? ???? ?? ?????????. WeChat ?? ??????? ??? ?? ??? ???? ?? ???? ?? ?????. ? ????? WeChat ???? ???? ??? ?? ??? ?? ??? ???? ???? ?? ??? ?????. ?? WeChat ???? ??? ??? ??? ?? ??? ?????. ?? ?? <swiper> ??? ???? ???? ?? ??? ?? ? ????. ? ?? ????? b? ??? ? ????.

WeChat ?? ?????? ??? ?? ??? ????? ???? ?? ??? ?????. WeChat ?? ????? ????? ??? ??? ?? ??? ??? ???? ?? ?????????. ?? ?????? ???? ??? ?? ??? API? ???? ??? ??? ?? ? ????. ? ? ?? ?? ??? ??????? ??? ?? ??? ?? ? ?? ???? ????? ????. WeChat ?? ?????? ??? ?? ??? ???? ?? ?????? ???? ????? API? ???? ???. ??? ??? ???? ?? ?? ?????.

WeChat ?? ?????? ???? ?? ??? ????? ?? ?? ??? ?????. WeChat ?? ????? ??? ?? ???? ?? ???? ?? ?? ??? ?? ??? ???? ??? ????. ?? ???? ?? ??? ????? ???? ?? ?? ?????. ? ????? WeChat ????? ???? ?? ??? ???? ??? ??? ???? ???? ?? ??? ?????. 1. ?? ?? ?? WeChat ?? ?????? ???? ?? ??? ???? ?? ??? ?????. ?? ??: ???? ? ??? ? ?? ??? ????? ? ?? ??? ??? ????? ???.
