Python网络编程问题:HTTP请求和响应的处理
在Python中,我们可以使用内置的http.client
或者第三方库如requests
来处理HTTP请求和响应。
- 使用http.client模块:
import http.client
def make_http_request(url, method='GET'):
conn = http.client.HTTPConnection('localhost') # 这里假设服务器在本地
headers = {'Content-Type': 'application/json'} # 如果是POST请求,需要添加Content-Type头
if method == 'GET':
conn.request(method, url, headers=headers))
response = conn.getresponse()
data = response.read().decode('utf-8')
return data, response.status
else:
conn.request(method.upper(), url, headers=headers))
response = conn.getresponse()
data = response.read().decode('utf-8')
return data, response.status
url = 'http://example.com/api/data'
method = 'GET'
data, status_code = make_http_request(url, method)
print(f'Response: {data}')
print(f'Status Code: {status_code}')
- 使用requests库:
import requests
def http_request_with_requests(url, method='GET'):
response = requests.request(method, url))
data = response.text
status_code = response.status_code
return data, status_code
url = 'http://example.com/api/data'
method = 'GET'
data, status_code = http_request_with_requests(url, method)
print(f'Response: {data}')
print(f'Status Code: {status_code}')
以上两种方式都可以用来处理HTTP请求和响应。
还没有评论,来说两句吧...