[英]how to send data from separate computer to flask app
我的用例是我有一個正在運行的 flaskapp 這個想法是它只會顯示一個 static 頁面(當前使用 PySimpleGUI),並且在接收到從另一台計算機發送的信息(例如 eg 的名稱)時,它會顯示名稱作為二維碼。 (因此可能會在 GUI 上不斷刷新並在接收數據時更改)
目前代碼設置是這樣的
@app.route('/qrcode', methods=['GET'])
def displayQrCode():
args = request.args
name = args.get('name') #
try:
img = qrcode.make(name)
img.save('checkin-qrcode.png')
# Display QR Code
qrWindowThread = threading.Thread(target=qrCodeWindowShow)
qrWindowThread.start()
print(name)
return 'Success'
except RuntimeError:
return 'Error in GET'
但是,作為 Flask 的新手,我不確定如何將字符串從運行 jupyter 筆記本的單獨計算機發送到此 Flask 應用程序。 在線教程顯示就像有一個表單字段頁面,但我希望沒有用戶輸入。
因此,例如,如果 jupyter 筆記本代碼向 ipaddress:5000 發送一個發布請求,它應該理想地顯示(在此處更正我:ipaddress:5000/qrcode?name=JohnDoe),因此 flask 應用程序將檢索此 JohnDoe 並將其顯示為 QR代碼。 我可以硬編碼或手動訪問此頁面,但我如何讓它“收聽”這個 /qrcode,然后在發送時獲取值。 還是我誤解了這一切,我需要通過另一種方式來做到這一點?
編輯:
好吧,第三次幸運,我想我現在明白你想要什么了。 因此,您的用例是第一台顯示 GUI 並運行 flask 服務器的計算機,其路由可以接收字符串。
有第二台計算機可以向該路由發送帶有名稱的 http 請求,當發生這種情況時,您希望第一台計算機上的 GUI 刷新以顯示名稱的 QR 碼。
我會通過讓 qrcode 路由將該名稱寫入持久存儲來解決這個問題。 可以是任何 sqlite db、環境變量、文件中的字符串。
運行 PySimpleGUI 界面的第一台計算機將這個持久存儲存儲起來以進行更改,如果它看到更改,則它會為該名稱呈現一個新的 QR 碼並顯示它。
有多種方法可以做到這一點:
希望你能得到這方面的幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.