利用websocket 建立py服务端和js客户端
在py建立服务端向js端发送消息等待回应
import asyncio
import websockets
async def send_message(websocket):
while True:
await asyncio.sleep(2)
print('发送...')
await websocket.send('向客户端发送消息等待回应')
encrypt_data = await websocket.recv()
print('接收kg_mid...', encrypt_data)
async def main_process(websocket):
await send_message(websocket)
loop=asyncio.get_event_loop()
loop.run_until_complete(websockets.serve(main_process, 'localhost', 10086))
loop.run_forever()
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
js建立客户端,等待消息传递(想要什么值 就放在哪)
// 在网页js中,使用ws.send()发送数据,使用ws.onmessage()接收数据。
window.ws = new WebSocket("ws://localhost:10086"),
window.ws.onopen = function() {
// 当WebSocket创建成功时,触发onopen事件
console.log('WebSocket 连接已打开');
window.ws.send('连接建立') //将消息发送到服务端
},
//window.ws.readyState === WebSocket.OPEN && window.ws.send(d.getKgMid()),
window.ws.onmessage = function (sss) {
// 当客户端收到服务端发来的消息时,触发onmessage事件,参数sss.data包含server传递过来的数据
console.log('WebSocket 客户端收到消息');
window.ws.send('加密后的kg_mid')
//debugger;
//return window.ws.send(d.getKgMid());
},
window.ws.onclose = function() {
// 当客户端收到服务端发送的关闭连接请求时,触发onclose事件
console.log('WebSocket 连接已关闭。');
};
window.ws.onerror = function(error) {
// 如果出现连接、处理、接收、发送数据失败的时候触发onerror事件
console.error('WebSocket 出现错误:', error);
};
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.