使用FLASK构建RESTful API服务器?

时间:2017-04-24 03:52:19

标签: python api flask-restful

我有一个python函数,它将JSON对象作为输入并返回' YES / NO'输出。现在,我正在尝试将其转换为API服务器,以便其他API可以调用它,传递JSON,我的API服务器可以返回“是/否”。

我读到了关于Flask-RESTFul的内容并查看了几个例子。但是所有这些都是从API客户端的角度编写的,比如用于读取待办事项列表或从数据库读取数据的API等。

有人可以提供2个小脚本的示例 - 一个充当API服务器,另一个充当API客户端。 API客户端调用API服务器并传递以下JSON -

{'fruit_1':'apple', 'fruit_2':'melon'}

并且API服务器返回' apple'作为输出。

提前致谢!

1 个答案:

答案 0 :(得分:2)

以下是Restful api代码示例。

服务器端代码

from flask import Flask, request
from flask_restful import Resource, Api

app = Flask(__name__)
api = Api(app)

class MyResource(Resource):
    def post(self):
        data = request.data
        # Process data
        return {'message': 'YES/NO'}

api.add_resource(MyResource, '/')

if __name__ == '__main__':
    app.run(debug=True)

客户端代码

import json
import requests
url = 'http://127.0.0.1:5000'
data = json.dumps({'fruit_1':'apple', 'fruit_2':'melon'})
headers = {'Content-Type': 'application/json'}
response = requests.post(url, data=data, headers=headers)
print(response.json()['message'])