Python 将纯文本文件传递到flask.request时出现问题

Python 将纯文本文件传递到flask.request时出现问题,python,flask,text-files,Python,Flask,Text Files,我正试图将一个纯文本文件作为烧瓶请求传入。我注意到了,如果我注意到了 f = flask.request.data 我得到一个字节数组/一个格式奇怪的字符串。我试过了 f = flask.request.data.decode("utf-8") 并且得到了错误 UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 0: ordinal not in range(128) 在尝试将f写入新

我正试图将一个纯文本文件作为烧瓶请求传入。我注意到了,如果我注意到了

f = flask.request.data
我得到一个字节数组/一个格式奇怪的字符串。我试过了

f = flask.request.data.decode("utf-8")
并且得到了错误

UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 0: ordinal not in range(128)
在尝试将f写入新文本文件时


我想用输入文本文件模拟“readlines()”方法,但不知道如何进行。

您可以尝试将字符串作为json传递,然后使用flask.request.json将其返回

下面是一个示例代码:

后端

from flask import Flask, jsonify, request
import json

app = Flask(__name__)

string = '123'

@app.route('/', methods=['GET'])
def test():
    return jsonify(string)

@app.route('/', methods=['PUT'])
def test_put():
    global string
    string = request.get_json()
    return 'OK'

if __name__ == '__main__':
    app.run()
这里是与服务器交互的请求

import requests
r = requests.get('http://127.0.0.1:5000/')
r.json()
Out[1]: '123'

requests.put('http://127.0.0.1:5000/', json='456')
Out[2]: <Response [200]>

r = requests.get('http://127.0.0.1:5000/')
r.json()
Out[3]: '456'
导入请求
r=请求。获取('http://127.0.0.1:5000/')
r、 json()
Out[1]:“123”
请求。放置('http://127.0.0.1:5000/“,json='456')
出[2]:
r=请求。获取('http://127.0.0.1:5000/')
r、 json()
Out[3]:“456”

尝试此操作,而不是请求。数据:

request.get_data()

您使用的是哪一版本的python?我使用的是python3。我有点困惑,首先如何将文本文件请求转换为字符串。我觉得即使是我得到的文件的字符串格式也有奇怪的字符,这就是我收到错误的原因。