如何使我的Post api能够将数据作为python中的参数发送

时间:2018-12-05 09:20:19

标签: python api flask postman

我有此代码:

from flask import (
    Flask,
    render_template
)

import SocketServer
import SimpleHTTPServer
import re

app = Flask(__name__, template_folder="templates")


@app.route('/index', methods=['GET'])
def index():
    return 'Welcome'


@app.route('/write_text_to_file', methods=['POST'])
def write_text_to_file():
    f = open("str.txt", "w+")
    f.write("hello world")
    f.close()


if __name__ == '__main__':

    app.run(debug=True)

编辑: MY API包含一项功能,该功能通过创建此文件将字符串写入本地文件系统。 我想要实现的是能够将字符串作为api请求的一部分传递(可以是任何字符串)并将接受的字符串写到文件中,现在我正在使用硬编码的字符串来完成工作,但是我希望实现使用此api写入文件时动态发送字符串的功能。

1 个答案:

答案 0 :(得分:1)

尝试一下:

在邮递员中,我将该字符串作为原始内容发布到了正文中。然后您可以使用获取数据 request.data将是字节类型,因此您必须使用request.data.decode("utf-8")

@app.route('/write_text_to_file', methods=['POST'])
def write_text_to_file():
    if request.method == 'POST':
        print(type(request.data))
        data = request.data.decode("utf-8")
        f = open("str.txt", "w+")
        f.write(data)
        f.close()
    return ''