Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android HTTP请求wierd 404未找到问题_Android_Http_Http Status Code 404 - Fatal编程技术网

Android HTTP请求wierd 404未找到问题

Android HTTP请求wierd 404未找到问题,android,http,http-status-code-404,Android,Http,Http Status Code 404,在我的应用程序中,我尝试点击一个URL,我使用以下代码 try { url = new URL(serverURL); httpURLConnection = (HttpURLConnection) url.openConnection(); int timeout = 30000; httpURLConnection.setConnectTimeout(timeout); httpURLConnection.setReadTimeout(time

在我的应用程序中,我尝试点击一个URL,我使用以下代码

  try {
    url = new URL(serverURL);

    httpURLConnection = (HttpURLConnection) url.openConnection();

    int timeout = 30000;
    httpURLConnection.setConnectTimeout(timeout);
    httpURLConnection.setReadTimeout(timeout);

    httpURLConnection.connect();

    String httpResponseMessage = httpURLConnection.getResponseMessage();
    responseCode = httpURLConnection.getResponseCode();

    Log.i(LOG_TAG,"Response code "+responseCode);

    } catch (Exception e) {
    e.printStackTrace();
    }
当通过浏览器(在计算机上和电话上)打开(机密)URL时,该URL工作正常,响应如预期。但是当我通过上面的代码点击相同的URL时,它会给我响应代码404(未找到)。有人能告诉我这是什么问题吗?
(很抱歉,无法发布URL,因为它是高度机密的。)

您确定已在
AndroidManifext.xml
中声明了吗?

问题已解决:)


实际上,在代码中甚至不需要以下两行代码

HttpGet request = new HttpGet();
request.setURI(new URI(serverURL));

一个HttpGet就足够了,您不需要它两次。

不确定这是否重要,但我有确切的问题

我当时正在做一些明确的端口80的工作,删除这一行使其工作:

HttpHost host = new HttpHost(targetHost, 80, "http");

对我还可以做其他与互联网相关的活动。如果清单中未授予该权限,则响应代码甚至不会是响应代码。您是否尝试了使用相同代码的其他URL?是的,对于其他URL,响应代码为预期的200。因此,您可以在手机浏览器中打开该URL吗?(如果是防火墙配置问题)什么?哪个网址?工作正常的那个?还是另一个?我想根据响应代码做一些操作,当我通过浏览器和应用程序点击相同的URL时,行为是不同的。我得到的响应代码分别是200和404。我指的是不工作的URL。您是使用手机浏览器还是计算机浏览器进行测试?您是否首先找出了导致错误的原因
HttpHost host = new HttpHost(targetHost, 80, "http");