我正在尝试使用 PHP 从第三方 API 系统接收到我的 URL 端点的数据响应。因此,每当他们对我有新的数据响应时,第三部分就会向我的端点(我在他们的 API 面板中填写的 url)发送一个发布请求。基本上,当他们从他们的系统收到新的提交时,他们只发送最后的响应数据。我已将此添加到我的端点 URL 上,以查看是否可以看到收到的数据响应:
$request_data = file_get_contents('php://input');
var_dump($request_data);
在他们的面板上,我可以测试端点 url 结果,在他们的面板上,当我单击 test request 按钮时,我得到了这个结果,这基本上是我的 var_dump的结果
:
但在我这边,输出就像一个完整的字符串,但在我的端点 URL 上什么也没有得到。
这是我的 phpinfo 文件中的 post_max_size
,所以我的 $_POST 变量不应该为空:
我应该期望接收到我的 URL 端点的已提交数据的格式如下所示:
{
"data": {
"id": "",
"name": "",
"email": "",
"phone": "",
"description": "",
"street": "",
"housenumber": "",
"postcode": "",
"city": "",
"questions": {
"Type opdracht": "",
"Wat wil je laten opstellen?": ""
},
"questions_unmapped": {
"114": "",
"187": ""
},
"date": "",
"notes": ""
}
}
有什么办法可以:
- 在 PHP 对象中转换此字符串
- 在我这边打印/存储这些数据(我的端点 URL)
最佳答案
尝试 file_get_contents('php://input') 的 $_POST 实例;
关于php - 使用 PHP 将从第三方接收的数据存储在端点 URL 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60774587/