java - 我需要为 org.apache.http.client.HttpClient 的 execute() 设置什么?

标签 java android apache-httpclient-4.x

我是 android 的新手,我正在制作一个简单的应用程序,将 JSON 对象发送到服务器。我在网上找到的很多例子都是下面三行代码:

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(prepai.host22.com/LoadStory.php);
HttpResponse httpResponse = httpClient.execute(httpPost);

我尝试运行它们,但在 eclipse 模拟器中运行的应用程序在执行 execute() 函数时崩溃了。我得到了这个日志:

Caused by: java.lang.IllegalStateException: Target host must not be null, or set in parameters. scheme=null, host=null, path=prepai.host22.com/LoadStory.php

如何给主机赋值?我还必须在单独的线程中进行所有通信吗?或者还有什么我需要做的吗?

最佳答案

您应该将完整的 url(包括 http 或 https)作为字符串传递,例如:

HttpPost httpPost = new HttpPost("http://prepai.host22.com/LoadStory.php");

关于java - 我需要为 org.apache.http.client.HttpClient 的 execute() 设置什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13888354/

相关文章:

java - apache asyncClient 是实际的异步还是它在幕后使用线程

java - 仅指定一些包具有调试输出

java - Spring MVC 上下文 bean : Is it bad to modify objects from getBean()? 线程问题

android - 如何限制我的 Android 应用程序在 Google Play 商店以外的地方发布?

android - UsageStatsManager 仅从最后一天/一周/一个月/一年返回数据?

执行 Apache HttpClient 时出现 java.lang.InterruptedException

java - 如何使用 HttpURLConnection 以与 Apache HttpClient lib 相同的方式发出 POST 请求

java - React Native - 值 '3130049174' 不适合 32 位有符号整数

java - SqliteOpenHelper onCreate() 方法更改被忽略

java - 如何让我的 Android 应用程序方法减少 RAM 消耗