本文章将一步一步教你如何使用Flask和Python从头开始设置自己的API。教程结束时,你将能够从头开始设置你自己的API。我将一步一步指导你,使你能够基于Flask和Python开发你自己的API。
什么是API?
API代表应用程序编程接口。它是你Web应用程序的后端部分,通常在你的服务器上运行。API通常用于服务于你的前端,并且也可以作为第三方集成的接口。API由一系列服务组成,用于获取或推送数据到你的后端服务器。
你需要什么?
首先,你需要安装Python,你按照以下链接中解释的说明进行安装:
https://www.python.org/downloads/?source=post_page-----395a9edd21dc--------------------------------
现在,由于我们将使用Flask,我们必须安装它,但什么是Flask呢?
“Flask是一个用Python编写的微Web框架。它被归类为微框架,因为它不需要特定的工具或库。[2]它没有数据库抽象层、表单验证或任何其他组件,现有的第三方库提供常用功能。然而,Flask支持扩展,可以添加应用程序特性,就好像它们是在Flask本身中实现的一样。扩展存在于对象关系映射器、表单验证、上传处理、各种开放认证技术和几个常见的框架相关工具。[3]”维基百科
要安装Flask,你可以使用pip(Python的包安装程序):
pip install Flask
构建你自己的Flask API
在以下示例中,我们将设置一个API,以捕获HTTP POST和GET,并简单地返回一条消息以查看它是否工作(你需要创建一个Python文件,例如flask_api.py来运行)。
# Import Flask
from flask import Flask
app = Flask(__name__)
#Define your paths & methods for your API
@app.route('/getapi',methods=['GET'])
def getapi():
return "GET API test"
@app.route('/postapi',methods=['POST'])
def postapi():
return "POST API test"
#Run the server(by default, the port is 5000)
app.run()
你可以使用这个命令运行应用程序:
python flask_api.py
结果应该是:
代码解释
首先,你需要导入Flask:
# Import Flaskfrom flask import Flask
然后,你必须指定你的API路径,例如对于“127.0.0.1:5000/getapi”:
@app.route('/getapi',methods=['GET'])
对于每个路径,你必须定义一个函数,当请求API路径时将调用该函数。
def getapi():
return print"GET API test"
请注意,你可以配置每个路径支持的方法(在这个例子中,我指定了第一个路径支持GET方法,第二个路径支持POST方法)。最后,你必须运行你的应用程序:
#Run the server(by default, the port is 5000)
app.run()
现在我们可以使用这个在线工具测试API:
https://reqbin.com/?source=post_page-----395a9edd21dc--------------------------------
这是GET请求的结果:
以及POST请求的结果:
注意:由于服务器在本地运行,服务器IP是127.0.0.1,5000(默认)是端口。
如果你想返回一个JSON而不是简单的文本,那么你可以添加这段代码:
# Import Flask
from flask import Flask
from flask import jsonify
app = Flask(__name__)
#Define your paths
@app.route('/postapijson',methods=['POST'])
def postapi():
return jsonify({'response': 'JSON response works !'})
#Run the server(by default, the port is 5000)
app.run()
结果将是: