curl post请求body体内传参数
2024-10-21 23:23:19
1. 传参格式 json
function post_http($array='',$url)
{
$ch = curl_init();
$header = array('Content-Type: application/json; charset=utf-8','Accept: application/json','secretKey:xxxxxxxx','signKey:xxxxxxxxxxx12');
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST,'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//https
//curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 2);
//curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);
// post数据
curl_setopt($ch, CURLOPT_POST, 1);
// post设置头
// curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:8080');//设置代理服务器
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
// post的变量
$arr = json_encode($array,);
curl_setopt($ch, CURLOPT_POSTFIELDS, $arr);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$result = curl_exec($ch);
if (curl_errno($ch)) {
return curl_error($ch);
}
curl_close($ch);
//打印获得的数据
return json_decode($result,true);
}
2. body体字符串式 表单传参 数组
function post_http($url)
{
//方法1 自己拼接
$body = "key=val&key1=val2";
//方法 2
//或用 $data = ['key' => 'val', 'key1' => 'val1'] ;$body = http_build_query($data) ;构建返回一个 URL 编码后的字符串
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$result = curl_exec($ch);
if (curl_errno($ch)) {
return curl_error($ch);
}
curl_close($ch);
//打印获得的数据
return json_decode($result,true);
}
最新文章
- 【转】ETL数据增量抽取——通过触发器方式实现
- jquery重置html form
- Swift实战-豆瓣电台(七)显示动画
- 初始化IoC容器(Spring源码阅读)-我们到底能走多远系列(31)
- Composer -- PHP依赖管理的用法
- 17.Quartus 怎么回读CPLD里面的东西
- EF中使用语句 或存储过程 查询(转)
- 23个经典JDK设计模式(转)
- Smarty学习笔记(二)
- JS-预解析(提升)与代码执行过程
- 饮冰三年-人工智能-linux-04 vim编辑器
- File类_常见的方法(获取目录内容)
- android 线程中断的处理
- [Python] Scipy and Numpy(1)
- 迷你MVVM框架 avalonjs 学习教程21、双向绑定链
- 【转】SpringMVC 拦截器
- 时间序列数据库——索引用ES、聚合分析时加载数据用什么?docvalues的列存储貌似更优优势一些
- Javascript平稳退化、渐进增强
- JS学习笔记 - fgm练习 - 输入法下拉框 三元表达式
- 刨死你系列——LinkedHashMap剖析(基于jdk1.8)