簡單地說,我想有一個iPhone應用程序,它使用輸入的用戶名和密碼值登錄到Web服務器,然後維護此登錄,以便用戶可以將數據發送到服務器。如何在iPhone應用程序中使用Web服務器保持登錄狀態?
這僅僅是一個使用cookies的問題嗎?如果是這樣,您如何執行檢查以驗證用戶是否已登錄?
謝謝。
簡單地說,我想有一個iPhone應用程序,它使用輸入的用戶名和密碼值登錄到Web服務器,然後維護此登錄,以便用戶可以將數據發送到服務器。如何在iPhone應用程序中使用Web服務器保持登錄狀態?
這僅僅是一個使用cookies的問題嗎?如果是這樣,您如何執行檢查以驗證用戶是否已登錄?
謝謝。
這不就是你的服務器如何確保登錄的有效性和長期性的問題嗎?服務器可能非常挑剔,並且如果看起來它已經停用超過幾十秒,或IP地址已更改,則不允許登錄繼續。如果您提供正確的會話或事務標識,某些服務器可能會少一些。然後有餅乾。這一切都取決於你正在訪問的服務器。
當你說:
如果是這樣,你怎麼進行檢查,以 驗證用戶登錄?
你是在談論你的iPhone應用程序如何檢查或如何檢查服務器?如果來自iPhone,它應該像狀態調用一樣快速嘗試,並且如果服務器請求認證,那麼您進行認證。如果不是,取決於服務器,則可以假定您已經過身份驗證。
一些應用程序經常進行身份驗證,假設服務器登錄已超時。其他應用程序不喜歡保留用戶的密碼,因此他們很少嘗試這樣做,並且當他們需要顯示登錄屏幕時,他們不必存儲密碼。
如果你沒有在Web服務器和這裏的登錄過程控制是我在我的應用程序之一所做的:
[[NSString alloc] initWithContentsOfURL:someURL usedEncoding:&enc error:&error];
這種方法已經使用了,所以如果你登錄了餅乾您將保持登錄狀態。假設服務器將會話標識保存到cookie中,會話標識用於標識用戶的會話(這是用戶實現網站的常規方式)。
要檢查用戶是否登錄,只需解析生成的網站。如果用戶以前未登錄,大多數網站會將您的請求重定向到登錄頁面。
爲了澄清聽到的步驟是: