国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

python用websockets創(chuàng)建服務(wù)端websocket創(chuàng)建客戶端

這篇具有很好參考價值的文章主要介紹了python用websockets創(chuàng)建服務(wù)端websocket創(chuàng)建客戶端。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

服務(wù)端

import asyncio
import json
import base64
import time
import cv2
import numpy as np
import websockets


class WebServer:
    def __init__(self, host, port):
        self.host = host
        self.port = port
        self.start_server = self.connect()
        self.clients = []

    async def echo(self, websocket, path):
        self.clients.append(websocket)
        client_ip, client_port = websocket.remote_address
        await websocket.send(json.dumps({"type": "handshake"}))

        while True:
            try:
                recv_text = await websocket.recv()
                with open("aa.txt", "w") as f:
                    f.write(recv_text)
                print(recv_text )
                msg = "收到消息"
                await websocket.send(msg)
                await asyncio.sleep(0.2)

            except websockets.ConnectionClosed:
                print("ConnectionClosed...", path)  # 鏈接斷開
                self.clients.remove(websocket)
                break
            except websockets.InvalidState:
                print("InvalidState...")  # 無效狀態(tài)
                self.clients.remove(websocket)
                break
            except Exception as e:
                print(e)
                # self.clients.remove(websocket)
                # break

    async def send_msg(self, msg, websocket):
        print('send msg:', msg)
        if websocket is not None:
            await websocket.send(msg)
        await asyncio.sleep(0.2)

    async def broadcast_msg(self, msg):
        for user in self.clients:
            await user.send(msg)

    def connect(self):
        start_server = websockets.serve(self.echo, self.host, self.port)
        print("連接成功!")
        return start_server

    def run(self):
        print("已啟動!")
        asyncio.get_event_loop().run_until_complete(self.start_server)
        asyncio.get_event_loop().run_forever()


if __name__ == '__main__':
    ws = WebServer("192.168.6.28", 8000)
    ws.run()

客戶端文章來源地址http://www.zghlxwxcb.cn/news/detail-835664.html

import json
import websocket


class WebClient:
    def __init__(self, host, port):
        self.host = host
        self.port = port
        self.conn = None
        self.flag = False

    def connect(self):
        try:
            url = f"ws://{self.host}:{self.port}"
            self.conn = websocket.create_connection(url)
            self.flag = True
        except Exception as err:
            self.flag = False

    def close(self):
        self.conn.close()

    def recv(self):
        data = self.conn.recv(1024)
        print(data)

    def send(self, data):
        self.conn.send(data)


if __name__ == '__main__':
    host = "192.168.6.28"
    # host = "127.0.0.1"
    port = 8000
    ws = WebClient(host, port)
    if not ws.flag:
        ws.connect()
    with open("bb.txt") as f:
        data = f.read()
    ws.send(data)

到了這里,關(guān)于python用websockets創(chuàng)建服務(wù)端websocket創(chuàng)建客戶端的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Java實現(xiàn)WebSocket客戶端和服務(wù)端(簡單版)

    Java實現(xiàn)WebSocket客戶端和服務(wù)端(簡單版)

    天行健,君子以自強不息;地勢坤,君子以厚德載物。 每個人都有惰性,但不斷學(xué)習(xí)是好好生活的根本,共勉! 文章均為學(xué)習(xí)整理筆記,分享記錄為主,如有錯誤請指正,共同學(xué)習(xí)進步。 寫在前面: WebSocket是一種在單個TCP連接上進行全雙工通信的協(xié)議。 WebSocket通信協(xié)議于

    2024年02月08日
    瀏覽(35)
  • 客戶端與服務(wù)端實時通訊(輪詢、websocket、SSE)

    客戶端與服務(wù)端實時通訊(輪詢、websocket、SSE)

    在某些項目中,某些數(shù)據(jù)需要展示最新的,實時的,這時候就需要和服務(wù)端進行長時間通訊 對于數(shù)據(jù)實時獲取,我們一般會有4種方案: 1.短輪詢:使用瀏覽器的定時器發(fā)起http請求,每隔一段時間就請求一次 2.長輪詢:客戶端向服務(wù)器發(fā)送Ajax請求,服務(wù)器接到請求后hold住連

    2024年02月08日
    瀏覽(21)
  • SpringBoot集成WebSocket實現(xiàn)客戶端與服務(wù)端通信

    SpringBoot集成WebSocket實現(xiàn)客戶端與服務(wù)端通信

    話不多說,直接上代碼看效果! 一、服務(wù)端: 1、引用依賴 2、添加配置文件 WebSocketConfig 3、編寫WebSocket服務(wù)端接收、發(fā)送功能 ? 聲明接口代碼: ? 實現(xiàn)類代碼: 4、如果不需要實現(xiàn)客戶端功能,此處可選擇前端調(diào)用,奉上代碼 二、客戶端: 1、引用依賴 2、自定義WebSocket客

    2024年01月23日
    瀏覽(24)
  • C++實現(xiàn)WebSocket通信(服務(wù)端和客戶端)

    C++實現(xiàn)WebSocket通信(服務(wù)端和客戶端)

    天行健,君子以自強不息;地勢坤,君子以厚德載物。 每個人都有惰性,但不斷學(xué)習(xí)是好好生活的根本,共勉! 文章均為學(xué)習(xí)整理筆記,分享記錄為主,如有錯誤請指正,共同學(xué)習(xí)進步。 這里單純是個人總結(jié),如需更官方更準(zhǔn)確的websocket介紹可百度 websocket是一種即時通訊協(xié)

    2024年02月09日
    瀏覽(19)
  • java-websocket服務(wù)端、客戶端及如何測試

    java-websocket服務(wù)端、客戶端及如何測試

    1. 導(dǎo)入依賴 2. 服務(wù)端實現(xiàn) (1)基礎(chǔ)版 (2)優(yōu)化版 對String分片轉(zhuǎn)換為Listbyte[] 3. 客戶端實現(xiàn) 4. websocket服務(wù)端測試方法 (1)自己編寫一個客戶端 ? 使用上面的java客戶端就可以直接調(diào)用測試。 (2)使用postman測試 ? postman版本需要在v8.0以上才有websocket的接口測試

    2024年02月11日
    瀏覽(22)
  • c++: websocket 客戶端與服務(wù)端之間的連接交互

    目錄 socket 頭文件 延遲時間 通信協(xié)議地址 TCP/IP 服務(wù)端 客戶端 編程步驟 服務(wù)端 客戶端 編程步驟 1. 初始化 WSAStartup 2. 創(chuàng)建 socket 2.1 協(xié)議族 2.2 socket 類型 2.3 協(xié)議 3. 綁定 bind (服務(wù)端) 4. 監(jiān)聽 listen(服務(wù)端) 5. 請求連接 connect(客戶端) 6. 接收請求 accept(服務(wù)端) 7. 發(fā)送

    2024年02月14日
    瀏覽(49)
  • 【netty】java如何作為websocket客戶端 對服務(wù)端發(fā)起請求

    【netty】java如何作為websocket客戶端 對服務(wù)端發(fā)起請求

    是的 本文介紹java如何作為客戶端 發(fā)起websocket請求 博主不做標(biāo)題黨 不會服務(wù)端客戶端分不清就寫個標(biāo)題 亂寫文章 為什么會使用java作為websocket客戶端? 雖說websocket協(xié)議 本意是web與服務(wù)端之間的通訊協(xié)議,那假設(shè)有一天 我們的供應(yīng)商 或者是甲方大爺 只提供了websocket接口呢?

    2024年02月05日
    瀏覽(17)
  • C++實現(xiàn)websocket服務(wù)端客戶端(基于boost,親測可行!)

    ?? 整篇文章基本參考了https://blog.csdn.net/jianghuan0122/article/details/123528907,文章記錄了如何在現(xiàn)有條件下實現(xiàn)該參考示例(參考示例存在報錯,并且參考示例沒有介紹環(huán)境安裝,正確源碼附于文末) ?? 自身環(huán)境:ubuntu18.04+gcc7.5.0+boost1.7,3 ??gcc或者g++一般都有,這里主要介紹

    2024年02月11日
    瀏覽(19)
  • SpringBoot集成WebSocket實現(xiàn)客戶端與服務(wù)端長連接通信

    SpringBoot集成WebSocket實現(xiàn)客戶端與服務(wù)端長連接通信

    場景: 1、WebSocket協(xié)議是用于前后端長連接交互的技術(shù),此技術(shù)多用于交互不斷開的場景。特點是連接不間斷、更輕量,只有在關(guān)閉瀏覽器窗口、或者關(guān)閉瀏覽器、或主動close,當(dāng)前會話對象才會關(guān)閉。 2、相較于 Http/Https?通信只能由客戶端主動發(fā)起請求,而 Socket?通信不僅能

    2024年02月02日
    瀏覽(28)
  • Spring Boot 集成 WebSocket 實現(xiàn)服務(wù)端推送消息到客戶端

    Spring Boot 集成 WebSocket 實現(xiàn)服務(wù)端推送消息到客戶端

    ? ? ? 假設(shè)有這樣一個場景:服務(wù)端的資源經(jīng)常在更新,客戶端需要盡量及時地了解到這些更新發(fā)生后展示給用戶,如果是 HTTP 1.1,通常會開啟 ajax 請求詢問服務(wù)端是否有更新,通過定時器反復(fù)輪詢服務(wù)端響應(yīng)的資源是否有更新。 ? ? ? ? ? ? ? ?? ? ? ? ?在長時間不更新

    2024年02月16日
    瀏覽(86)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包