作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 HTTP 连接到我的服务器并获取 JSON 对象,但似乎我做不到。
这是我的代码:
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class Conector {
public static void main(String[] args) throws Exception {
CloseableHttpClient httpclient = HttpClients.createDefault();
try {
HttpGet httpGet = new HttpGet("https://falseweb/select_all.php");
CloseableHttpResponse response1 = httpclient.execute(httpGet);
try {
System.out.println(response1.getStatusLine());
HttpEntity entity1 = response1.getEntity();
System.out.println(entity1.getContentEncoding());
EntityUtils.consume(entity1);
} finally {
response1.close();
}
} finally {
httpclient.close();
}
}
}
但是我得到的不是 JSON,而是打印的 null。我已经尝试过 php 文件并且它可以工作,返回一个 json。知道我做错了什么吗?
连接有效,因为我收到此消息:
HTTP/1.1 200 OK
最佳答案
您似乎正在注销内容编码,而不是响应的实际内容,这可能就是您没有任何 JSON 乐趣的原因。
尝试以下操作(使用 Apache Commons IOUtils ):
System.out.println(IOUtils.toString(entity1.getContent(), "UTF8"));
如果您无法使用 IOUtils
,那么您可以使用任何将 InputStream
转换为 String
的方法。更多信息here .
关于java - HttpClientJava GET JSON 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47327484/
我正在尝试通过 HTTP 连接到我的服务器并获取 JSON 对象,但似乎我做不到。 这是我的代码: import org.apache.http.HttpEntity; import org.apac
我是一名优秀的程序员,十分优秀!