基本的な Flask の例を Flask-Restplus で書き直すために、プレーン テキストの本文のみで POST を作成したいと考えています。
以下の例は私が望むことを行いますが、もちろん、フィールドとのマッピングではなく値を直接期待しているため、ドキュメントは正しくありません。
プレーン テキスト ペイロード (フィールドなし) が必要であることを UI が示すように、例を調整するにはどうすればよいですか?
from flask import Flask, request, jsonify
from flask_restplus import Resource, Api, fields
app = Flask(__name__)
api = Api(app)
all_data = []
@api.route('/data')
class Data(Resource):
def get(self):
return jsonify(all_data)
@api.expect(api.model("NewData", {"newdata": fields.String}))
def post(self):
json = request.json
print("Adding", json)
all_data.append(json)
return ""
if __name__ == '__main__':
app.run(debug=True, port=8080)
URL ではなくペイロードにデータを含めることが重要です。フィールドを使用した JSON 入力の方が確実な解決策かもしれませんが、まずはこのバージョンを完成させたいと思います。
(そして、(URL ではなく) JSON ペイロードを使用する場合、Flask-Restplus が JSON を組み立てるように、フィールドに個別の入力行を表示する方法はありますか?)