HttpURLConnection调用connect异常的问题

出现这个问题是一年前看android视频时做的一个小案例,当时调用connect方法时不管怎样都抛出IO异常,总之就是连接不上

当时在网上也找了很多方法,如下(确认url正确的情况下):

方法一:在AndroidMenifest.xml中加入以下代码

 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

方法二:HttpURLconnection修改其方法

// 设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在   
// http正文内,因此需要设为true, 默认情况下是false;   
httpUrlConnection.setDoOutput(true);   
// 设置是否从httpUrlConnection读入,默认情况下是true;   
 httpUrlConnection.setDoInput(true);   
// Post 请求不能使用缓存   
  httpUrlConnection.setUseCaches(false);    
// 设定传送的内容类型是可序列化的java对象   
// (如果不设此项,在传送序列化对象时,当WEB服务默认的不是这种类型时可能抛java.io.EOFException)   
httpUrlConnection.setRequestProperty("Content-type", "application/x-java-serialized-object");    
// 设定请求的方法为"POST",默认是GET   
httpUrlConnection.setRequestMethod("POST"); 

var email = $('input[name="user.email"]');
if(email.val()=="" || typeof(email.val()) == "undefined"){
   $("#emailLable").html("必填");
   registerSubmit = false;
}

方法三:

手机运行时没有连接网络(就是没有开2g/3g或者wifi),这是让我比较无语的地方,找了很久才找出来

方法四:

以上所有的方法都还是不管用,在调试的时候无意的发现

也就是在调用url.openConnection()之后得到的HttpURLConnection对象其默认的端口号是80

然后我就试着去修改了一下tomcat的端口号为80,没想到这一改调用connect方法就没有问题了,虽然不知道为什么要这样改(视频中好像没有提到)。。。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值