2 qq 16259457 qq_16259457 于 2016.09.07 10:14 提问

android 中使用HttpURLConnection报错

代码如下:

                private String HttpConnection(String urlString) throws IOException {
        HttpURLConnection urlConnection = null;
        BufferedInputStream in = null;
        final URL url;
        try {
            url = new URL(urlString);
            urlConnection = (HttpURLConnection) url.openConnection();
            urlConnection.setConnectTimeout(5000);
            in = new BufferedInputStream(urlConnection.getInputStream());
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        InputStreamReader isr;
        String result="";
        String line="";
        try {
            if (in!=null){
            isr=new InputStreamReader(in,"utf-8");
            BufferedReader br=new BufferedReader(isr);
            while ((line=br.readLine())!=null){
                result+=line;
            }
            }
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        urlConnection.disconnect();
        return result;
    }

```使用移动网络就会报这个09-07 09:47:24.705: W/System.err(21672): java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)异常,然而如果用wifi网络就没有问题,把网址直接输入浏览器中打来也没有问题。这是怎么回事呢


1个回答

qq_27665781
qq_27665781   Rxr 2016.09.07 10:14

服务端是用的是内网吧。

qq_16259457
qq_16259457 不是,我是打开“都来读”这个小说网站的页面,换成了用okhttp请求也还是那样,wifi可以正常连接,手机本身的4G网络就不行,仍然是那样报错
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
【Android开发那点破事】解决Andriod使用HttpURLConnection 失败问题
在Android的Activity中使用HttpURLConnection连接到服务端时抛出异常,Access denied。第一个想到是权限问题。然后就尝试将INTERNET权限加上:在Manifest中加上: 还是抛异常!看异常信息,和StrictMode有关,想到和Android版本有关,然后在Activity中加上如下代码,问题解决: StrictMode.setThreadPol
解决Andriod使用HttpURLConnection 失败问题
首先,应该考虑是不是权限问题,先检查Manifest.xml看是否配置了权限,如果没有配置,则在application前面加上: 如果还不行,那可能是Android版本问题,需要在用HttpURLConnection的方法里面加上: StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDi
android studio HttpURLConnection 出现握手失败
最近发现在做https请求时,会报出SSL握手异常 [plain] view plain copy javax.net.ssl.SSLHandshakeException: com.android.org.bouncycastle.jce.exception.ExtCertPathValidatorException: Could not val
Android 使用HttpURLConnection发送HTTP请求
在过去,Android上发送HTTP请求一般有两种方式,HttpURLConnection和HttpClient,不过由于HttpClient存在API数量过多,扩展困难等缺点,Android团队越来越不建议我们使用这种方式,终于在Android6.0系统中,HttpClient的功能被完全移除了,标志着比功能被正式弃用,现在官方建议使用的是HttpURLConnection的用法。 首先需要获
Android 中HttpURLConnection 的使用
首先是下载运行tomcat 0:GET 请求 别忘了权限 例如我的电脑的ip地址是192.168.1.106,那么通过HttpURLConnection 的GET方法下载一个图片的案例如下 package tech.androidstudio.readfileshttpurlconnection; import android.support.v7.app.AppCompat
Android HttpURLConnection.getResponseCode() 505报错
报错代码: public boolean getState(String urlStr){ try { url = new URL(urlStr); URLConnection URLconnection = url.openConnection(); H
Android HttpURLConnection 异常
01-04 14:30:53.794 7164-7164/com.common.framework W/System.err: java.net.MalformedURLException: Protocol not found: www.baidu.com 01-04 14:30:53.794 7164-7164/com.common.framework W/System.err:     a
android中HttpURLConnection调用getResponseCode()时崩溃 解决方法
目前的环境是web为后台,android为前端,以json通信。 后台搭建完成,android解析json数据是出错。 上代码: public static String getJsonContent(String urlPath) { try { URL url=new URL(urlPath); HttpURLConnection connection = (HttpURLConn
HttpURLConnection 遇到connect()或者getOutputStream()卡死的问题
HttpURLConnection 遇到connect()或者getOutputStream()卡死的问题 不知为何在今天测试的时候各种没有反应,通过定位问题,发现 程序是在getOutputStream的时候没有继续执行下去,由于使用getOutputStream() 会自动调用connect(),然后发现是connect()后就没有执行 原来是 解决方法: 在设置了conn
如何解决在HttpURLConnection的getInputStream方法调用时出错的问题
关于HttpURLConnection的用法在网上可以查到很多的代码示例,但是在调用getInputStream时常常莫名地出错(加了Try/catch,但直接跳到finally这块里),在AndroidManifest.xml中也加入了权限申请如下:   但仍然出错,在网上查来查去,不得其解,终于在一篇博文中找到了答案,请注意! Android4.0后所有网络方面的操作都不能在主线程!!!