与Flask-RESTful建立基本的RESTful API
我将讨论如何使用Flask框架构建基本的RESTful API。在开始之前,我们将安装Flask RESTful库。在本例中,不会使用任何数据库。但是你可以用你自己的。我将展示如何使用Flask创建Rest API
windows 安装
pip install flask-restful
** 现在,我们安装了flask-restful图书馆。我们需要创建一个名为main.py的文件。其名称可以是任何东西。我们将首先进口瓶和其flask_restful图书馆。**
from flask import Flask
from flask_restful import Resource, Api
app = Flask(__name__)
api = Api(app)
- After that, we will create a simple class. It will like this:
class Quotes(Resource):
def get(self):
return {
'ataturk': {
'quote': ['Yurtta sulh, cihanda sulh.',
'Egemenlik verilmez, alınır.',
'Hayatta en hakiki mürşit ilimdir.']
},
'linus': {
'quote': ['Talk is cheap. Show me the code.']
}
}
- 在这个例子中,我们使用静态数据。就像我说的你可以使用自己的数据库。现在我们需要将这个类作为资源添加到包装器API库。
api.add_resource(Quotes, '/')
最后,我们的代码是这样的:
# -*- coding: utf-8 -*-
from flask import Flask
from flask_restful import Resource, Api
app = Flask(__name__)
api = Api(app)
class Quotes(Resource):
def get(self):
return {
'ataturk': {
'quote': ['Yurtta sulh, cihanda sulh.',
'Egemenlik verilmez, alınır.',
'Hayatta en hakiki mürşit ilimdir.']
},
'linus': {
'quote': ['Talk is cheap. Show me the code.']
}
}
api.add_resource(Quotes, '/')
if __name__ == '__main__':
app.run(debug=True)
在上面的代码中,我们为HTTP get请求创建了一个名为get的方法。我们和邮递员试过了
- 当你试着未实现的HTTP请求您将会看到一个警告消息是这样的:
{
"message": "The method is not allowed for the requested URL."
}
你想为这个类使用post请求。您必须创建一个名为柱的方法。让我们创建post方法HTTP post请求。首先,我们需要进口reqparse。所以,我们的导入语句将会改变像下图:
from flask import Flask
from flask_restful import Resource, Api, reqparse
app = Flask(__name__)
api = Api(app)
parser = reqparse.RequestParser()
让我们创建一个方法来更新资源。我们的put方法将是这样的
def put(self, id):
parser.add_argument('quote', type=str)
args = parser.parse_args()
return {
'id': id,
'status': True,
'quote': 'The quote numbered {} was updated.'.format(id)
}
- 在那之后,我们需要改变我们的资源如下:
api.add_resource(Quotes, '/', '/update/<int:id>')
出处[https://dev.to/aligoren/building-basic-restful-api-with-flask-restful-57oh]
欢迎使用CSDN,进入[夏枯草]的博客园,有技术上的问题请加QQ:307440205