Re: [問題] WI-FI、Http狀態判斷
※ 引述《rj9rj9123 (MISS)》之銘言:
: 最近使用到 HttpPost 這個方法丟資料給網頁,網頁傳資料回來顯示
: 用這判斷連接網頁是否成功
: getStatusLine().getStatusCode() == HttpStatus.SC_OK
: HttpStatus.SC_OK 是 HTTP 200
: 補充:HTTP 200 代表網頁正常、404 代表找不到網頁、400 代表Bad Request
: 程式在正常的網路狀況下是執行正確的
: 我的問題來了
: 7-11或者公共場所提供的WI-FI要進入網頁登入帳號密碼才能使用
: 就算沒登入帳號,WI-FI狀態還是已連接、可使用的
: 去執行程式,傳回值是顯示登入WI-FI帳號的html的code...
: 不知道這種情況要如何來判斷是無法連結網頁的 ?
: 基本的code http://pastebin.com/icMzdLhp
要判斷這種情況
直接 request www.google.com 看回應是不是200
可能會有誤判的情況
像我學校的wifi一樣要登入
未登入時去 request www.google.com
它回應一樣給200,進而造成誤判
因為 response 的 Location header 被 HttpClient 處理掉
繼續 request redirect 之後的URL
可以用
HttpClient.setRedirectHandler(RedirectHandler redirectHandler)
觀察request www.google.com 時,是否被轉向到其他URL去
藉以判斷這種需要登入的網路有沒有通
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.252.99.120
推
09/01 00:45, , 1F
09/01 00:45, 1F
→
09/01 18:25, , 2F
09/01 18:25, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章