在我的應用程序中,我需要與我的Django網站進行通信。有些資源需要認證,所以我需要用戶登錄。如何從iOS應用程序登錄Django帳戶?
但是這不會發生在瀏覽器或Web視圖中。我需要使用Object-C來發出登錄請求並處理響應 - 基本上我想要存儲會話ID。
在Web服務器端,我應該如何在Django中做到這一點?有一個獨立的視圖,並返回JSON可能?我怎樣才能得到新生成的會話ID呢?
在我的應用程序中,我需要與我的Django網站進行通信。有些資源需要認證,所以我需要用戶登錄。如何從iOS應用程序登錄Django帳戶?
但是這不會發生在瀏覽器或Web視圖中。我需要使用Object-C來發出登錄請求並處理響應 - 基本上我想要存儲會話ID。
在Web服務器端,我應該如何在Django中做到這一點?有一個獨立的視圖,並返回JSON可能?我怎樣才能得到新生成的會話ID呢?
我不會得到會話ID。我相信登錄用戶更適合於Web界面。我會創建一個API來爲您的應用程序提供所需的資源。 http://en.wikipedia.org/wiki/Representational_state_transfer認證可能最適合私鑰/公鑰對或其他類似的流行api認證系統。
您不需要對認證系統進行任何更改,除了可能確保登錄表單在較小的屏幕上可用。 Cookie在iOS上的工作方式與在網絡上的工作方式相同。您可以使用登錄表單顯示模態UIWebView。用戶登錄後,可能你正在設置會話cookie。如果您向該域的後續請求進行cookie匹配,則應該發送該cookie。您想查看HTTP'Accept'頭字段,該字段指定客戶端期望接收的內容類型。在您的控制器(視圖?)中,您需要檢查'Accept'標頭,並返回適當的內容類型,可能是'application/json'(或者API的自定義類型)。