java代码通过HttpURLConnection发送请求获取手机在线网站的归属地信息时,数据是空的

通过HttpURLConnection发送请求获取手机在线网站的归属地信息时,数据是空的,如下图:http://www.showji.com/这个手机在线的网站,在网站上... 通过HttpURLConnection发送请求获取手机在线网站的归属地信息时,数据是空的 ,如下图:

http://www.showji.com/ 这个手机在线的网站,在网站上查的话是可以查到归属地信息,他网页源代码也看不到相关的归属地信息,我们不管是用Httpclient还是HttpUrlConnection 发送请求数据都是空的,有没有高手知道这是怎么一回事呢?
这是手机在线查询归属地后的网页源代码,里面也是空的
展开
 我来答
华兴兴华
2014-10-09 · TA获得超过189个赞
知道小有建树答主
回答量:297
采纳率:100%
帮助的人:223万
展开全部

public static String getMobilAdress(String mobile) throws Exception{

        InputStream inputStream = MobileService.class.getClassLoader().getResourceAsStream("mobilesaop.xml");

        byte[] data = ReadInputStram(inputStream);

        String xml=new String(data);

        String soap= xml.replaceAll("\\$mobile",mobile);

        String path = "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx";

        data = soap.getBytes();

        HttpURLConnection conn =(HttpURLConnection)new URL(path).openConnection();

        conn.setReadTimeout(5000);

        conn.setRequestMethod("POST");

        conn.setDoOutput(true);

        conn.setRequestProperty("Content-Type", "application/soap+xml; charset=utf-8");

        conn.setRequestProperty("Content-Length", String.valueOf(data.length));

        OutputStream out = conn.getOutputStream();

        out.write(data);

        out.flush();

        out.close();

        if(conn.getResponseCode() ==200){

            return parseXML(conn.getInputStream());

        }

        return null;

    }


 


你用firebug查看是有的,数据应该是使用ajax设置上去的,所以你直接查看源代码肯定没有

更多追问追答
追问
这是用的什么浏览器? 火狐吗?  火狐可以看到。用IE和360都看不到
追答
是火狐浏览器
loveQwithC26
推荐于2016-05-21 · TA获得超过228个赞
知道小有建树答主
回答量:175
采纳率:100%
帮助的人:66.7万
展开全部
我怀疑他是到达这个页面以后过一段是件又发送一个ajax请求,才把获取的数据内容根据元素id填充到页面,
所以你程序访问这个页面只能得到他空的没有数的页面,你可能需要找找他获取数据请求的url

找到了,他实际请求的是
"http://v.showji.com/locating/showji.com.aspx?m=11111111111&output=json&callback=querycallback×tamp=1412826381489"
这个地址,把m后面换成你要查的号码就可以了

返回值为

querycallback({"Mobile":"11111111111","QueryResult":"True","TO":"中国联通","Corp":"中国联通","Province":"北京","City":"北京","AreaCode":"010","PostCode":"100000","VNO":"","Card":""});

我用自己手机号测的,可以
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ctkbg
2014-10-09 · 超过23用户采纳过TA的回答
知道答主
回答量:51
采纳率:0%
帮助的人:35.2万
展开全部
1.我看过网页源码,里面是有归属地信息的。
2.你在仔细的调试看看吧。
3.不清楚你要做什么?
追问
你这个不是通过手机在线查询的归属地信息吧,  我想用HttpURLConnection对手机在线(http://www.showji.com/search.htm?m=1376067)发送查询归属地的请求。 他们网站响应的数据归属地信息都为空。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式