鍍金池/ 問答/Java  Android/ 在android中請求http://www.baidu.com/s?wd=xxx

在android中請求http://www.baidu.com/s?wd=xxxx

用HttpURLConnection請求百度搜索地址,在pc中運行

            URL url = new URL("http://www.baidu.com/s?wd=xxxx");
             HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
             httpURLConnection.setRequestMethod("GET");// 提交模式
             String s = IOUtil.in2String(httpURLConnection.getInputStream());
             System.out.println(s);

可以返回正確的搜索后的html內(nèi)容。
但是在android端相同的代碼返回的內(nèi)容缺不對。
試過了設置跟pc端同樣的請求頭一樣無效。請問如何處理?

回答
編輯回答
愛礙唉

你表述問題不太清楚
建議你說明你請求頭與PC相同是什么概念
是說你用普通的java代碼請求這個地址時,請求頭與瀏覽器相同還是怎么樣

2018年5月31日 22:39
編輯回答
墨小白

確定請求頭完全一樣嗎?你可以通過chrome里面的移動設備調(diào)試可以看到手機訪問這個頁面的返回的頁面是什么,一般百度網(wǎng)站針對移動端的代碼處理是靠User-Agent

Mozilla/5.0 (iPhone; CPU iPhone OS 10_3 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) CriOS/56.0.2924.75 Mobile/14E5239e Safari/602.1

諸如這種形式,如果其中包含了移動端的信息便會獲取移動端相關(guān)的數(shù)據(jù)

2017年3月6日 07:23