目标主机不能为空,或者在参数中设置

Ama*_*Ama 12 android http-post android-manifest

我收到此错误"目标主机不能为空,或在参数中设置".我的清单文件设置了互联网权限,我在我的网址之前放了"http://".它仍然会出现同样的错误.我的网址没有"www".附在它上面.

我的代码的一部分:

HttpPost post = new HttpPost("http://infocreation.something_something1.xml");
Run Code Online (Sandbox Code Playgroud)

我的部分内容如下:

<uses-permission android:name="android.permission.INTERNET/>
Run Code Online (Sandbox Code Playgroud)

现在我该怎么做?

cod*_*e22 10

它应该是

HttpPost post = new HttpPost("http://www.infocreation.something.xml");
Run Code Online (Sandbox Code Playgroud)


Ama*_*Ama 7

所以我用几乎相同的URL替换了URL,除了没有下划线并且有效.我通过进一步搜索(例如此处)意识到带有_(下划线)的URL无效,尽管该特定URL可能有效.感谢你的帮助.


StE*_*rMi 7

您是否在HttpPost构造函数中添加了一个真实且有效的URL?

无论如何这是你的解决方案:

如果您有以下代码失败:

HttpGet httpget = new HttpGet("www.host.com");
Run Code Online (Sandbox Code Playgroud)

然后错误很容易解决:问题是您没有向URL添加协议,因此将其更改为:

HttpGet httpget = new HttpGet("http://www.host.com");
Run Code Online (Sandbox Code Playgroud)

然后它会按照需要工作.

资料来源:h3x.no