利用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()
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);
};