php - PHP 使用 CURL 发布 JSON
问题描述
我正在尝试使用 CURL 发布 JSON,并创建了一个表来存储数据以及从我将数据发送到的 url 获得的响应。
但是,回复一直说我的“发布数据为空”,我不知道为什么。
我在https://reqbin.com/之类的网站上使用存储在我的表中的数据对其进行了测试,并且它工作正常,因为我得到了“成功”的响应。
有人可以帮我弄清楚为什么我的数据一直被清空吗?
下面是我的代码
$url = "url that im trying to post Json to.";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($json_object));
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$result = curl_exec($ch);
我也尝试过使用 http_build_query 但它不起作用。
提前致谢!
解决方案
PHP默认识别application/x-www-form-urlencoded
标准数据类型
// 一
$post = $GLOBALS['HTTP_RAW_POST_DATA'];
// 二
$post = file_get_contents("php://input");
推荐阅读
- reactjs - React / React Native + Enzyme:如何测试组件是否呈现它的孩子?
- aws-lambda - AWS EC2 到 cloudwatch 事件到 lambda 到 SNS
- asp.net-core - .net core ubuntu 使用服务时更改端口
- android - android - Firestore 通过查询按顺序获取项目位置
- php - 如何使用gmail帐户从godaddy服务器发送邮件
- mysql-real-escape-string - 插入 blob 不起作用(mysql_real_escape_string)
- firebase - Firebase:如何调试 onCall 函数?
- java - Keycloak + Spring Boot 无法将访问令牌转换为 JSON
- python-2.7 - 如何确保复选框在 Tkinter 中未选中
- swift - 如何在swift的集合视图中同时显示来自url和uiimage的图像?