PhpStorm HTTP 客户端。无法将 POST 参数传递给本地主机
PhpStorm HTTP client. Unable to pass POST params to localhost
我刚刚发现了一个 PhpStorm HTTP 客户端工具,但立即遇到了意想不到的问题。我无法将任何 POST 参数发送到我的本地主机。
我试过以下代码:
POST https://test.loc/
Content-Type: application/json
{
"test": "asd"
}
没用。 $_REQUEST
数组是空的。
与此同时,我正在毫无问题地接收所有 GET 参数。
还尝试向 https://httpbin.org/post
发送完全相同的请求,并在响应时收到我的参数列表,因此我认为请求语法没问题,HTTP 客户端运行良好。
那么,谁能告诉我我的本地服务器出了什么问题?
我正在使用:
- PhpStorm 2020.3.1
- 打开服务器 5.3.7
此问题与PhpStorm无关。它只是纯粹的 PHP 以及它如何处理此处的 POST 数据。
在你的脚本中试试这个:
Request Body:
<pre><?= var_dump(file_get_contents('php://input')) ?></pre>
(从 JSON 解码以将其视为数组,例如 json_decode(file_get_contents('php://input'), true)
)
PHP 在 Content-Type: multipart/form-data
时解码 POST 数据(在这种情况下 php://input
不可用)但是对于您的请求类型,您需要自己处理(或使用一个library/framework)。
我刚刚发现了一个 PhpStorm HTTP 客户端工具,但立即遇到了意想不到的问题。我无法将任何 POST 参数发送到我的本地主机。
我试过以下代码:
POST https://test.loc/
Content-Type: application/json
{
"test": "asd"
}
没用。 $_REQUEST
数组是空的。
与此同时,我正在毫无问题地接收所有 GET 参数。
还尝试向 https://httpbin.org/post
发送完全相同的请求,并在响应时收到我的参数列表,因此我认为请求语法没问题,HTTP 客户端运行良好。
那么,谁能告诉我我的本地服务器出了什么问题?
我正在使用:
- PhpStorm 2020.3.1
- 打开服务器 5.3.7
此问题与PhpStorm无关。它只是纯粹的 PHP 以及它如何处理此处的 POST 数据。
在你的脚本中试试这个:
Request Body:
<pre><?= var_dump(file_get_contents('php://input')) ?></pre>
(从 JSON 解码以将其视为数组,例如 json_decode(file_get_contents('php://input'), true)
)
PHP 在 Content-Type: multipart/form-data
时解码 POST 数据(在这种情况下 php://input
不可用)但是对于您的请求类型,您需要自己处理(或使用一个library/framework)。