2011-11-05 41 views
0

我正在使用Android應用程序登錄銀行網站。我可以通過HTTP請求和響應處理成功登錄。如何在Java中進行HTTP身份驗證?

但是,當我在原生的Android應用程序中輸入錯誤的用戶名和密碼我不能夠捕捉到來自HTTP響應說。如果我輸入了錯誤的密碼而不是登錄,它會在web視圖中啓動一個網頁。但我應該在我的本地應用程序中重寫此內容。

我如何可以捕獲從HTTP錯誤的密碼迴應?

+0

而且即使是錯誤的用戶名和密碼,我得到的HTTP OK 200響應。所以不能區分... – EnthuDeveloper

+0

爲什麼不像「錯誤的用戶名和密碼」或類似「0」或「1」的錯誤用戶名/密碼代碼的字符串返回響應? –

+0

一個銀行網站?你對此會完全錯誤。聯繫銀行網站支持並通知API。 – BalusC

回答

1

這聽起來有點俗氣,去對此沒有正確的API。無論如何,已經提到了捕獲響應的一種方式:解析HTML並根據內容登錄是否成功找出答案。

但是,根據銀行網站的行爲,你也許能檢查URL就夠了,例如,如果它會將您重定向到一個錯誤頁面。從描述中可以看出您使用的是WebView,因此您可能需要查看WebViewClient的shouldOverrideUrlLoading (WebView view, String url)以檢查即將加載的URL。使用這種方法的例子可以在here找到。

1

你的問題是,該網站時您提供了不正確的用戶名和密碼,這是Web應用程序的完全自然的連接到返回一個200 OK。您必須解析HTML結果,並將「錯誤的用戶名或密碼」消息視爲「拒絕訪問」。

+0

無論如何,我有錯誤的用戶名密碼響應cookie嗎? – EnthuDeveloper

+0

我認爲你需要查找一下HTTP協議。 Cookie通常用於保存用戶的信息,包括會話cookie,表明用戶在服務器上有會話。我從來沒有見過任何人使用cookie來表明用戶名和密碼不正確。 –

相關問題