如何通过Curl将请求中的cookie发送到php中的API
我正在进行基于HTTP cookie的身份验证,身份验证之后,我得到了cookie的响应 另一个步骤是将请求中的cookie发送到API。连同post/get请求 下面的例子是我的卷发如何通过Curl将请求中的cookie发送到php中的API,php,http,curl,cookies,request,Php,Http,Curl,Cookies,Request,我正在进行基于HTTP cookie的身份验证,身份验证之后,我得到了cookie的响应 另一个步骤是将请求中的cookie发送到API。连同post/get请求 下面的例子是我的卷发 $cookie_jar= $_COOKIE['DesigntoolAuth']; //$ch = curl_init($url); // The data to send t
$cookie_jar= $_COOKIE['DesigntoolAuth'];
//$ch = curl_init($url);
// The data to send to the API
$postData = array(
'ProjectId' => $projectId,
'ProjectName' => $proname,
'ProjectDetails' => $details,
'UserId' => $userId
);
$data_string = json_encode($postData);
// Setup cURL
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($c, CURLOPT_COOKIEFILE, $cookie_jar);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json'
//'Content-Length: ' . strlen($data_string)
));
$api_result = curl_exec($ch);
echo $api_result;
有人能告诉我如何发送cookie吗?来自:
卷曲文件
包含cookie数据的文件的名称。cookie文件可以是Netscape格式,也可以只是简单的HTTP样式的头文件转储到文件中。如果名称为空字符串,则不会加载cookie,但cookie处理仍处于启用状态
这意味着CURLOPT_-COOKIEFILE
需要引用一个包含您需要发送的cookies的文件。该文件是一个存在于运行cURL的服务器上的文件,而cURL将把cookie数据传输到远程主机。我希望该文件需要读访问权限
可以找到一个很好的答案来描述Netscape格式的外观
此外,如果要保留请求期间生成的cookie,还需要从以下位置设置CURLOPT_-COOKIEJAR
:
卷曲文件
包含cookie数据的文件的名称。cookie文件可以是Netscape格式,也可以只是简单的HTTP样式的头文件转储到文件中。如果名称为空字符串,则不会加载cookie,但cookie处理仍处于启用状态
这意味着CURLOPT_-COOKIEFILE
需要引用一个包含您需要发送的cookies的文件。该文件是一个存在于运行cURL的服务器上的文件,而cURL将把cookie数据传输到远程主机。我希望该文件需要读访问权限
可以找到一个很好的答案来描述Netscape格式的外观
此外,如果您想保留请求期间生成的Cookie,还需要设置一个
CURLOPT_COOKIEJAR
,CURLOPT_COOKIEFILE
(顾名思义)需要是一个包含您需要发送的Cookie的文件。需要是文件吗?我不明白这个?我需要将我的cookie值发送到$cookie\u jar吗?CURLOPT\u COOKIEFILE
(顾名思义)需要是一个包含您需要发送的cookie的文件。需要是一个文件吗?我不明白这个?我需要将我的cookie值发送到$cookie\u jar吗?抱歉,我无法理解它,因为我是新手!我如何获取“包含cookie数据的文件名”我正在从其他域接收cookie,我没有创建cookie,因为我在其他域上有身份验证,成功登录后会将我重定向到子域。该文件是本地文件,cURL将使用该文件读取cookie并将其传输到其他域。你只需要在运行cURL的服务器上创建文件。嘿,对不起,我不能理解它,因为我是新手!我如何获取“包含cookie数据的文件名”我正在从其他域接收cookie,我没有创建cookie,因为我在其他域上有身份验证,成功登录后会将我重定向到子域。该文件是本地文件,cURL将使用该文件读取cookie并将其传输到其他域。您只需要在运行cURL的服务器上创建文件。