基于Python的cs实例

Server 端:
...


import socket



s = socket.socket()

host = socket.gethostname()

port = 222;

s.bind((host,port))



s.listen(5)



while True:

    c,addr = s.accept()

    print('Got connection',addr)

    c.send('thank you for connection'.encode('utf-8'))

    c.close()




Client端:





import socket




s = socket.socket()


host = socket.gethostname()


port = 222




s.connect((host,port))


print(s.recv(1024))


s.close


中间出现过TypeError: 'str' does not support the buffer interface
stackoverflow中解释是Python3.X的str需要转换为utf-8才能识别,所以才c.send中添加了转换。
连接:
http://stackoverflow.com/questions/5471158/typeerror-str-does-not-support-the-buffer-interface

转载于:https://www.cnblogs.com/-Doraemon/p/4700071.html

### Python CS架构的概念 C/S(Client/Server)架构是指客户端-服务器模式的一种分布式计算模型,在这种结构下,应用程序分为两部分:客户机和服务器。客户机负责发起请求并与用户交互;而服务器则处理来自多个客户的请求并返回相应的数据或服务[^1]。 对于Python而言,作为一种高级别的编程语言,它提供了丰富的库来支持构建基于C/S架构的应用程序。例如,`flask`这样的Web框架可以帮助快速搭建HTTP协议下的轻量级服务器端逻辑,配合标准库中的`requests`模块可以在另一侧轻松创建模拟浏览器行为的HTTP客户端[^2]。 ### 使用Python实现CS架构的例子 #### 服务器端代码 (server.py) ```python from flask import Flask, request app = Flask(__name__) @app.route('/hello', methods=['GET']) def hello(): return 'Hello, World!' if __name__ == '__main__': app.run() ``` 这段代码展示了如何利用Flask建立一个简易的服务端点 `/hello` ,当接收到GET类型的HTTP请求时会响应字符串 "Hello, World!" 给调用者。 #### 客户端代码 (client.py) ```python import requests response = requests.get('http://localhost:5000/hello') print(response.text) ``` 这里通过 `requests` 库发送了一个到本地运行着上述Flask应用实例地址上的 GET 请求,并打印出了从服务器获取的信息。 另外,在更底层的操作层面,也可以直接采用Python内置的标准Socket接口来进行TCP/IP级别的通讯操作,如下所示: ```python cliSockfd = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ``` 此行初始化了一个面向流式的套接字对象,可用于进一步连接远程主机和服务端口以完成更加复杂的通信任务[^3]。 值得注意的是,实际部署过程中可能还需要考虑诸如安全性、性能优化等方面的问题,但对于学习目的来说,上面提供的例子已经足够展示基本原理了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值