关于URLConnection的问题 100

关于建立连接我也懂点,大概就是URLurl=newURL("http://www.baidu.com");//这里就用百度示范了URLConnectionurlCon=u... 关于建立连接我也懂点,大概就是
URL url = new URL("http://www.baidu.com");//这里就用百度示范了
URLConnection urlCon = url.openConnection();
然后就根据urlCon 进行读取操作了。
我的代码是这样的
URL url = new URL("http://www.baidu.com");
URLConnection urlCon = url.openConnection();
System.out.println("Date: "+ new Date(urlCon.getDate()));
System.out.println("Content_Type: "+ urlCon.getContentType());
System.out.println("Last-Modified: "+ new Date(urlCon.getLastModified()));
出来的结果是
Date: Thu Jan 01 08:00:00 CST 1970
Content_Type: null
Last-Modified: Thu Jan 01 08:00:00 CST 1970
这个传说的时间都出来了。
网上查了下,有的人说要加个urlCon.connect();这点我不是很懂。但是加了之后,这一行就会抛出java.net.ConnectException: Connection refused: connect异常。

百度的服务器肯定没问题,我都在这里提问了。代码上我也没看出啥问题。难道是我本机的设置上有问题。
Eclipse下,JDK1.6,使用的包就是JAVA.NET里面的

在线等。。。。
看看今天问题能不能补充上。
昨晚我回家试了一下,居然百度通了,那就估计是公司网络限制了的问题了。但是依旧还有几个问题,希望大家帮帮忙。
百度能通,但Google和163不行,我查了一下,应该是3楼说的那个问题,但是我没找到Vista的参数。
另外,虽然很可能是公司内网的什么限制,但是,既然正常的网页浏览的什么都没问题,肯定有办法连出去的,不知道有没高人可以指点一下,可能的问题方向
展开
 我来答
freish
2009-09-15 · TA获得超过2878个赞
知道大有可为答主
回答量:3153
采纳率:0%
帮助的人:2692万
展开全部
不知道你有没有看API
我摘了一段给你看看

public long getDate()返回 date 头字段的值。

返回:
该 URL 引用的资源的发送日期,或者如果为未知,则返回 0。返回的值为距离格林威治标准时间 1970 年 1 月 1 日的毫秒数。

public long getLastModified()返回 last-modified 头字段的值。结果为距离格林威治标准时间 1970 年 1 月 1 日的毫秒数。

返回:
此 URLConnection 引用的资源的上次修改日期,或者如果为未知,则返回 0。

你出现的情况应该就是未知了。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
火星人的基地
2009-09-15 · 火星人的个人储备,涉及天文地理上下五千年
火星人的基地
采纳数:52 获赞数:220

向TA提问 私信TA
展开全部
URL url = new URL(strAddress.replaceAll(" ", "%20"));
URLConnection con = url.openConnection();
// 有些网站不允许没有浏览器信息的请求,故添加浏览器信息
con.setRequestProperty("User-Agent", "Mozilla/4.0(compatible;MSIE7.0;windows NT 5)");
// 有些网站可能返回的是一个xml文件,这时候需要指定内容类型
con.setRequestProperty("Content-Type", "text/html");
con.setConnectTimeout(7200);
con.connect();

给分啊!加精啊!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-09-15
展开全部
我是楼主,不知道出什么问题了,所以补充问题补充不上来,我就在这里发了,希望各位能看到。

回2楼,HttpURLConnection其实不是问题关键,因为我尝试过,把地址改成我本地部署的一个web项目,这样是能够正常访问的,。不管是用HttpURLConnection还是URLConnection。所以我估计是公司网络的限制,我晚上回家看看。(PS:我都PING 不上外网的任何一个站点)

回3楼,我想知道,我用的Vista,那么User-Agent的键值是什么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一个正直的吧友
2009-09-15 · TA获得超过3143个赞
知道小有建树答主
回答量:941
采纳率:0%
帮助的人:1086万
展开全部
问题在于URLConnection 是抽象类,实现的时候一般使用它的子类HttpURLConnection,这个是http协议下的使用的类

HttpURLConnection urlCon = (HttpURLConnection) url.openConnection();

打出结果
Date: Tue Sep 15 16:03:14 CST 2009
Content_Type: text/html
Last-Modified: Thu Jan 01 08:00:00 CST 1970

最后一个最后修改时间一般都返回0,所以是传说时间
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
daay1986
2009-09-17 · TA获得超过6018个赞
知道大有可为答主
回答量:2208
采纳率:0%
帮助的人:1471万
展开全部
楼主我这里不管是那个网站都是对的,你看看你打印的时间Date: Thu Jan 01 08:00:00 CST 1970
1970年?70年都还没baidu呢,所以我认为你的url有问题,加上urlCon.connect()有这句出现异常,基本上就是没链接上了。建议你把url的相关信息打印出来,看看是不是有问题,如果没有那就可能是协议出问题了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式