在Python请求正文中发布特殊字符
我试图使用Python3中的请求库发布一个带有重音字符的主体。我尝试过各种各样的编码组合,但没有这样的运气 我的请求:在Python请求正文中发布特殊字符,python,python-3.x,encoding,python-requests,Python,Python 3.x,Encoding,Python Requests,我试图使用Python3中的请求库发布一个带有重音字符的主体。我尝试过各种各样的编码组合,但没有这样的运气 我的请求: import requests requests.post('http://localhost:9999/post', data='é') 我的服务器: from flask import Flask, request app = Flask(__name__) @app.route("/post", methods=['POST']) def he
import requests
requests.post('http://localhost:9999/post', data='é')
我的服务器:
from flask import Flask, request
app = Flask(__name__)
@app.route("/post", methods=['POST'])
def hello():
print(request.stream.read())
return request.data
if __name__ == "__main__":
app.run(port=5000)
我希望看到服务器打印出正确的重音字符,但我得到的是字节码b'\xe9'
,理想情况下,我想调整请求,而不是服务器,它只是用于测试目的。可能对您有帮助。request.data
返回字节而不是unicode。GitHub上的链接问题是使用
request.get_data()
而不是request.data
,因为它提供了一个as_text
参数,您可以使用它来获取unicode而不是字节。可能对您有所帮助。request.data
返回字节而不是unicode。GitHub上的链接问题是使用
request.get_data()
而不是request.data
,因为它提供了一个as_text
参数,可以用来获取unicode而不是字节