亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法在 PythonAnywhere 上獲取燒瓶 python API 的請求標頭

無法在 PythonAnywhere 上獲取燒瓶 python API 的請求標頭

喵喵時光機 2022-10-25 10:34:01
我已經部署了一個基于燒瓶的 python 應用程序PythonAnywhere。它包含一個需要以下請求標頭的 API:app_name: <app-name>app_key: <app-key>下面是代碼:@app.route('/api/app/get_id', methods=['POST'])def get_id():    try:        if 'app_name' and 'app_key' in request.headers:            """            SOME CODE            """        else:            return jsonify({"status": "unauthorized", "error": "authentication parameters missing"}), 401    except Exception as e:        log.error("Exception occurred {}".format(e))如您所見,它需要app_name和app_key. 如果在標頭中未找到,則 API 僅返回錯誤。我從郵遞員那里調用這個 API 并包含了app_name和app_key:但它總是拋出error authentication parameters missing. 在我的本地測試中,它運行良好。我還嘗試通過將日志記錄如下進行調試:@app.route('/api/app/get_id', methods=['POST'])def get_id():    try:        log.error(request.headers)   # <-- logging        if 'app_name' and 'app_key' in request.headers:            """            SOME CODE            """        else:            return jsonify({"status": "unauthorized", "error": "authentication parameters missing"}), 401    except Exception as e:        log.error("Exception occurred {}".format(e))但是日志文件app_name中app_key也不存在。看起來由于某種原因PythonAnywhere不接受這些請求標頭。有誰知道問題是什么,我該如何解決。請幫忙。謝謝
查看完整描述

1 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

'app_name' and 'app_key'在 Python 中計算為 True,因此您的 if 語句詢問鍵 True 是否在標題中,并且可能不在。

嘗試使用if 'app_name' in request.headers and 'app_key' in request.headers'


查看完整回答
反對 回復 2022-10-25
  • 1 回答
  • 0 關注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號