2
首先,之前我想這個問題,我想說的是,如果沒有做到這一點更合適的方式,請讓我知道,因爲我可能可以使用那。Django的會話
好了,我在我的應用程序,我需要添加一個REST API,允許用戶登錄,改變了一些東西,並註銷無需使用瀏覽器。我想我會讓我寫的api_login視圖返回他們的session_key,然後讓每個請求傳回會話密鑰。例如然後
def login(request):
... all the django auth code I have
# login adds the information to the request right?
login (request, user)
return simplejson.dumps({'key': request.session.session_key})
我所面臨的問題是,稍後再嘗試使用session_key
如下,但是這個失敗奇怪
key = request.GET['key']
my_session = SessionStore(session_key=key)
my_session.session_key == key
>>> True
my_session.values()
>>> []
my_session.session_key == key
>>> False
因此,大家可以看到,我從數據庫中檢索與SessionStore對象正確的關鍵。但是,當我嘗試從中檢索任何值時,它將返回空,並且偶數會更改其中的基礎密鑰。任何意見,這是表示讚賞。
這不是你的問題的答案,但你應該檢查出django-tastypie。它處理多種身份驗證方案,包括類似於您想要執行的任何操作。 http://django-tastypie.readthedocs.org/en/latest/authentication_authorization.html#authentication-options – Alex