php下curl发送cookie

目录

[一:使用 CURLOPT_COOKIE 选项](#一:使用 CURLOPT_COOKIE 选项)

二:CURLOPT_COOKIEFILE

三:CURLOPT_HTTPHEADER


php curl发送cookie的几种方式,下面来介绍下

通过设置 CURLOPT_COOKIE 选项,你可以将 cookie 字符串传递给 cURL 请求

$url = 'http://127.0.0.1/a/b/c';

$cookie = "name=value; another_name=another_value";

$headerArray =array("Content-type:application/json;charset='utf-8'",

"Accept:application/json","Platform:pc");

$ch = curl_init();

curl_setopt(ch, CURLOPT_URL, url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt(ch, CURLOPT_HTTPHEADER, headerArray);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, []);

curl_setopt(ch, CURLOPT_COOKIE, cookie);

response = curl_exec(ch);

curl_close($ch);

cookie信息如下:

{"connection":"close","content-type":"application\/json;charset='utf-8'","content-length":"0","platform":"pc","accept":"application\/json","cookie":"name=value; another_name=another_value","host":"127.0.0.1"}

二:CURLOPT_COOKIEFILE

使用 CURLOPT_COOKIEFILE ,通过设置 CURLOPT_COOKIEFILE 选项,你可以指定一个包含 cookie 的文件,cURL 将从该文件中读取 cookie。

$url = 'http://127.0.0.1/a/b/c';

$cookiePath = 'E:/DB/cookie.txt';

$headerArray =array("Content-type:application/json;charset='utf-8'",

"Accept:application/json","Platform:pc","Cookie: name=value; another_name=another_value");

$ch = curl_init();

curl_setopt(ch, CURLOPT_URL, url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt(ch, CURLOPT_HTTPHEADER, headerArray);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, []);

curl_setopt(ch, CURLOPT_COOKIEFILE, cookiePath);

response = curl_exec(ch);

curl_close($ch);

三:CURLOPT_HTTPHEADER

使用 CURLOPT_HTTPHEADER 选项:你可以使用 CURLOPT_HTTPHEADER 选项来发送自定义的 HTTP 头信息,包括 Set-Cookie 头。例如:

$url = 'http://127.0.0.1/a/b/c';

$headerArray =array("Content-type:application/json;charset='utf-8'",

"Accept:application/json","Platform:pc","Cookie: name=value; another_name=another_value");

$ch = curl_init();

curl_setopt(ch, CURLOPT_URL, url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt(ch, CURLOPT_HTTPHEADER, headerArray);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, []);

response = curl_exec(ch);

curl_close($ch);

相关推荐
稳联技术2 小时前
Ethercat转Profinet网关如何用“协议翻译术“打通自动化产线任督二脉
linux·服务器·网络
烟雨迷2 小时前
Linux环境基础开发工具的使用(yum、vim、gcc、g++、gdb、make/Makefile)
linux·服务器·学习·编辑器·vim
Bruk.Liu2 小时前
Linux 上安装RabbitMQ
linux·服务器·rabbitmq
UpUpUp……3 小时前
Linux--JsonCpp
linux·运维·服务器·c++·笔记·json
Willis_m3 小时前
Linux 服务器用 SSH 拉取多个 Git 工程
linux·服务器·git·ssh
紫金修道3 小时前
【Linux】在Arm服务器源码编译onnxruntime-gpu的whl
linux·服务器·arm开发
xixingzhe23 小时前
Nginx 配置多个监听端口
服务器·前端·nginx
Clockwiseee3 小时前
文件上传总结
运维·服务器·学习·文件上传
liyi_hz20083 小时前
O2OA(翱途)开发平台系统安全-用户登录IP限制
运维·服务器·网络·o2oa开发
孤寂大仙v5 小时前
【Linux笔记】——进程信号的产生
linux·服务器·笔记