我正在将项目从PHP迁移到Java。
我这样做没有问题,但该项目包含一个我无法设置的HTTP请求。它必须从API中获取JSON(需要授权),然后将其保存为变量(将其传递给我的解析器类)。
这是我在php中使用的代码:
$result = file_get_contents($url, null, stream_context_create(array(
'http' => array(
'method' => 'GET',
'header' => 'Accept: application/json' . "\r\n"
. 'Authorization: Bearer ' . $token . "\r\n",
),
)));
$url
是请求网址,$token
是API的授权。
我已经尝试过StackOverflow中的几个解决方案和库,但是无法在Java版本中使用这些解决方案和库。此外,我还没有找到包含响应代码的代码,这实际上允许程序通知用户出了什么问题。
更新:我尝试使用注释中链接的libery,但编码url只是不起作用,我得到一个java.io.UnsupportedEncodingException:
String url = URLEncoder.encode(requestURL,"UTF-8");
我也尝试过:
Url url = URLEncoder.encode(requestURL,"UTF-8");
导致了同样的错误。 文档无法解决此问题。有人可以解释我做错了什么或给我一些示例代码吗?