PHP;从外部 url (JAVA) 获取 post 字符串
PHP; get post string from external url (JAVA)
我需要将字符串数据发送到外部 url,这是一个 API 客户端,但我总是让服务器发回错误,然后我检查了服务器中的日志写成JAVA,会抛出异常
"java.lang.NumberFormatException: For input string: "{"success":false,"errorCode":"500","message":"Unknown Error!","value":null,"totalPageCount":0,"footerValue":null}"
这是我的 php 代码:
$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'content' => $params
),
));
$received = file_get_contents(URL, false, $context);
echo $received.'<br>';
我很确定我发送到服务器的数据格式正确,因为我可以访问日志,而且我知道来自服务器的所有响应参数都在 JSON,UTF- 8 和 post 方法,我错过了什么吗?
如果需要更多信息,请告诉我,谢谢。
您需要解析字符串。您收到 NumberFormatException,这是因为您的服务器正在接收非数字数据。
Integer.parseInt() // in java
您可以通过这种方式解析服务器端的内容或发送数字数据。
另一种方法:
Integer.valueOf() // in java
我需要将字符串数据发送到外部 url,这是一个 API 客户端,但我总是让服务器发回错误,然后我检查了服务器中的日志写成JAVA,会抛出异常
"java.lang.NumberFormatException: For input string: "{"success":false,"errorCode":"500","message":"Unknown Error!","value":null,"totalPageCount":0,"footerValue":null}"
这是我的 php 代码:
$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'content' => $params
),
));
$received = file_get_contents(URL, false, $context);
echo $received.'<br>';
我很确定我发送到服务器的数据格式正确,因为我可以访问日志,而且我知道来自服务器的所有响应参数都在 JSON,UTF- 8 和 post 方法,我错过了什么吗?
如果需要更多信息,请告诉我,谢谢。
您需要解析字符串。您收到 NumberFormatException,这是因为您的服务器正在接收非数字数据。
Integer.parseInt() // in java
您可以通过这种方式解析服务器端的内容或发送数字数据。
另一种方法:
Integer.valueOf() // in java