2011-05-29 61 views
0

我想在我的應用程序上實現像登錄一樣的Facebook。這個想法是我有一個Web服務和一個具有登錄表單的網頁。如何創建Facebook一樣登錄?

現在,我想讓我的網頁彈出,當一個人點擊我的iPhone應用程序登錄按鈕。如果驗證成功,我會關閉iPhone彈出窗口。還有一種可能性,其中登錄成功後會有一個令牌返回,我應該可以從我的iPhone應用程序獲取該令牌。

我該如何執行此操作?

+0

您應該指定您的網站開發偏好,因爲它有很大的不同。你的一半問題是如何設置身份驗證服務,這是一個不同的答案。NET或Java或紅寶石或... – Gats 2011-05-29 20:11:53

+0

我使用.net爲我的Web服務。我只有在iPhone和網頁通信上纔有Web服務的問題。感謝你的快速回復。不勝感激。 – 2011-05-29 20:27:08

回答

0

您需要使用標準的UIWebView在您的網站上加載登錄表單(UIWebView class reference)。您可能需要設置委託並等待webViewDidStartLoad或webViewDidFinishLoad--在這些位置您可以檢查請求的狀態。

我想嘗試的是web服務在失敗時呈現相同的表單,並在成功時呈現一個最小的「加載...」窗體,並帶有一些隱藏屬性,您將能夠直接從UIWebView中取出在您的應用程序中(例如,令牌或其他登錄信息以用於未來的請求)。這樣用戶可以多次嘗試授權但未成功,但只有當他們成功進行身份驗證並擁有一些標識符時,纔會繼續進入應用程序。

如果您不想將令牌隱藏在Web服務返回的實際HTML中,也可以在設備本身上創建一個標識符,並在用戶發佈到Web服務時將其包含在您的表單中。在成功驗證時,您可能需要提出第二個請求,以獲取某種您想要進行的其他請求的唯一標記,但這會變得更復雜一些。

最好的辦法是嘗試最簡單的方法,然後詢問安全專家如何改進您的交互/協議。

+0

非常感謝你..我認爲這將起作用。 – 2011-05-29 20:29:18

相關問題