Python接口傳輸url與flask數(shù)據(jù)詳解
周五下午,作為小白太痛苦了,這兩天一直在做一件事,如下:
使flask接口中的函數(shù)執(zhí)行的同時(shí),向指定的url傳遞數(shù)據(jù)(我甚至不知道怎么描述這個(gè)問題)。大概的函數(shù)結(jié)構(gòu)使這樣的:
app1 = Flask('app1')
@app1.route('/', methods=["POST"])
def pic():
data = request.get_data() # 獲取參數(shù)字典
# func1在執(zhí)行過程中會(huì)保存圖并對(duì)圖片進(jìn)行處理
# *需求是在func1把圖保存后立即向指定的url傳輸圖片路徑
# 在這里真的難到我了
func1()
return "111"
if __name__ == '__main__':
app3.run(host='0.0.0.0', port=1000)
我的解決思路:
看了很多的博客教程之后,發(fā)現(xiàn)request.post(url,data)可以向url發(fā)送帶數(shù)據(jù)的請(qǐng)求,這是不是就能將數(shù)據(jù)傳給url?
所以我寫了個(gè)服務(wù),如下:
功能為獲取數(shù)據(jù),打印數(shù)據(jù),返回成功提示。然后保持這個(gè)url處于可連接狀態(tài)(也就是run一下?)。
from flask import Flask,request
# ............service3...............
app2 = Flask('app2')
@app2.route('/', methods=["POST"])
def pic():
data = request.get_data()
print(data,type(data))
return "獲取數(shù)據(jù)成功"
if __name__ == '__main__':
app3.run(host='0.0.0.0', port=4000)
顯示

遇到一個(gè)問題,就是request.get_data()和request.get_json()的區(qū)別,在這里記一下:
get_data():
是以數(shù)據(jù)的格式進(jìn)行獲取,如果你傳輸?shù)氖且粋€(gè)標(biāo)準(zhǔn)的json,那他依然是個(gè)json格式;
get_json():
他只能去解析json格式的傳遞參數(shù)
然后我就開始測(cè)試能不能向指定url發(fā)送數(shù)據(jù)了!寫了如下代碼:
myobj中為我要向url發(fā)送的數(shù)據(jù)
import requests
import json
# 表單參數(shù),參數(shù)名為 fname 和 lname
myobj = {'fname': 'www','lname': 'qqq'}
# 發(fā)送請(qǐng)求
x = requests.post('http://127.0.0.1:4000/', data = json.dumps(myobj))
# 返回網(wǎng)頁內(nèi)容
print(x.text)
同樣run一下,顯示:說明數(shù)據(jù)傳輸給了url

再看上一個(gè)文件的提示:url這邊成功的打印了通過requests.post()傳遞過去的信息

到此這篇關(guān)于Python接口傳輸url與flask數(shù)據(jù)詳解的文章就介紹到這了,更多相關(guān)Python傳輸url與flask內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺談numpy中np.array()與np.asarray的區(qū)別以及.tolist
這篇文章主要介紹了淺談numpy中np.array()與np.asarray的區(qū)別以及.tolist,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06
基于騰訊云服務(wù)器部署微信小程序后臺(tái)服務(wù)(Python+Django)
Python numpy.array()生成相同元素?cái)?shù)組的示例

