python編寫api接口--使用flask


 目標:

使用Python實現一個簡單的接口服務,可以通過get、post方法請求該接口,拿到響應數據。創建一個api_server.py文件,

 

想要實現的效果是這樣的:

添加代碼如下: 

 

 1 import flask,json  2 from flask import request  3 
 4 '''
 5 flask: seb框架,通過flask提供的裝飾器@server.route()將普通函數轉換為服務   6 登錄接口,需要傳入url,username,passwd  7 '''
 8 
 9 #創建一個服務,把當前這個python文件當做一個服務 
10 server = flask.Flask(__name__) 11 
12 #server.route()可以將普通函數轉變為服務 登錄接口的路徑、請求方式 
13 @server.route('/login',methods=['get','post']) 14 def login(): 15     #獲取通過url請求傳參的數據
16     username = request.values.get('name') 17     #獲取url請求傳的密碼,明文 
18     pwd=request.values.get('pwd') 19     #判斷用戶名、密碼都不為空,如果不傳用戶名、密碼則username和pwd為None
20     if username and pwd: 21         if username == 'xiaoming' and pwd == '111': 22             resu={'code':200,'message':'登錄成功'} 23             return json.dumps(resu,ensure_ascii=False)#將字典轉換為Json串,json是字符串
24         else: 25             resu={'code':-1,'message':'賬號密碼錯誤'} 26             return json.dumps(resu,ensure_ascii=False) 27 
28     else: 29         resu={'code':1001,'message':'參數不能為空'} 30         return json.dumps(resu,ensure_ascii=False) 31 
32 if __name__== '__main__': 33     server.run(debug=True,port = 8888,host='0.0.0.0')#指定端口,host,0.0.0.0代表不管幾個網卡,任何ip都可訪問

 執行以上代碼,測試一下效果: 

1.正確的用戶名,錯誤的密碼

在瀏覽器中輸入http://127.0.0.1:8888/login?name=xiaoming&pwd=111111

2.正確的用戶名 正確的密碼 

http://127.0.0.1:8888/login?name=xiaoming&pwd=111

3.密碼為空

http://127.0.0.1:8888/login?name=xiaoming 

 

 

參照下面3文(使用了第1篇文章作者的思路,以最低的學習成本實現了我想要的目標,通過 一個http地址 ,請求到相應的json數據 )


使用Python實現一個簡單的接口服務(利用flask)

https://blog.csdn.net/songlh1234/article/details/83381642

 

 

用Python 的Flask實現 RESTful API(學習篇)(極好!最復合我完整的需求,小例子深入淺出,簡顯易懂) 

https://www.jianshu.com/p/33160c224732

Python實現簡單的API接口

https://blog.csdn.net/u013040887/article/details/78895323/

使用Python編寫API接口和使用API接口

https://www.jianshu.com/p/adf9bcbc196e


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM