簡體   English   中英

request.POST.get() 返回無

[英]request.POST.get() returning none

我正在使用 Django 運行一個網站。 我正在嘗試登錄,但它沒有返回任何內容,並且我沒有收到任何錯誤。 它顯示 200 狀態代碼。

這是我的views.py代碼:

def user_login(request):
    datas= {'log':False}
    if request.method == "POST":
        usern=request.POST.get('Username')
        passw=request.POST.get('password')
        response = requests.post(url='http://www.onebookingsystem.com/productionApi/API/Admin/login.php',data={"Username":usern,"password":passw})
        json_data = response.json()
        if json_data['status'] == 1:
            user=authenticate(Username=usern,password=passw)
            login(request,user)
            range_yearly = 0
            range_monthly = 0
            respo = requests.get(url='http://www.onebookingsystem.com/productionApi/API/Admin/admin_dashboard.php')
            data_dash = json.loads(respo.text)

當我在 POST HTTP 請求中運行時,它顯示成功登錄,但在 GET HTTP 請求中,它顯示:狀態 0“手機或密碼丟失”。//缺少所需的帖子參數。

這可能是因為您使用的請求沒有 session 存儲。 您可以嘗試這種(未經測試)的方式:

def user_login(request):
    # Create client with session storage to store session cookies
    client = requests.Session()

    datas= {'log':False}
    if request.method == "POST":
        usern=request.POST.get('Username')
        passw=request.POST.get('password')

        # client stores session cookie at login
        response = client.post(url='http://www.onebookingsystem.com/productionApi/API/Admin/login.php',data={"Username":usern,"password":passw})

        # you can check that with
        # print(client.cookies)
        json_data = response.json()
        if json_data['status'] == 1:
            user=authenticate(Username=usern,password=passw)
            login(request,user)
            range_yearly = 0
            range_monthly = 0

            # client should be able to access because of its stored session cookie
            respo = client.get(url='http://www.onebookingsystem.com/productionApi/API/Admin/admin_dashboard.php')
            data_dash = json.loads(respo.text)

更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM