【问题标题】:how to get cookie value from curl response in php如何从php中的curl响应中获取cookie值
【发布时间】:2019-01-23 18:14:19
【问题描述】:

我通过 curl 调用这个 API:

$url = '/api/auth/login';
$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => $url,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => "{\"fbUserID\": \"$fbID\", \"fbAccessToken\": \"$Token\"}",
    CURLOPT_HTTPHEADER => array(
        "accept: application/json",
        "cache-control: no-cache",
        "content-type: application/json"
    ),
));

$response = curl_exec($curl);
$jsonresult = json_decode($response);
$err = curl_error($curl);

我的问题是如何在响应标头中获取 cookie 值,我正在测试 POSTMAN API 中的调用,所以我得到了 cookie 值。

你能帮忙吗?

【问题讨论】:

    标签: php api curl cookies


    【解决方案1】:

    添加此代码段

    $cookie=dirname(__FILE__)."/cookie.txt"; 
    
    curl_setopt ($curl, CURLOPT_COOKIEJAR, $cookie);
    
    curl_setopt ($curl, CURLOPT_COOKIEFILE, $cookie);
    

    最终会是这个样子

    $cookie=dirname(__FILE__)."/cookie.txt"; 
    $url = '/api/auth/login'; 
    $curl = curl_init(); 
    curl_setopt_array($curl, 
    array( CURLOPT_URL => $url
    , CURLOPT_COOKIEJAR => $cookie
    , CURLOPT_COOKIEFILE => $cookie
    , CURLOPT_RETURNTRANSFER => true
    , CURLOPT_ENCODING => ""
    , CURLOPT_MAXREDIRS => 10
    , CURLOPT_TIMEOUT => 30
    , CURLOPT_CUSTOMREQUEST => "POST"
    , CURLOPT_POSTFIELDS => "{\"fbUserID\": \"$fbID\", \"fbAccessToken\": \"$Token\"}"
    ,CURLOPT_HTTPHEADER => array(
    "accept: application/json",
    "cache-control: no-cache",
    "content-type: application/json"
    ),
    ));
    $response = curl_exec($curl);
    $jsonresult = json_decode($response);
    $err = curl_error($curl);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-02
      • 2016-02-03
      • 2019-12-03
      • 1970-01-01
      • 1970-01-01
      • 2021-07-29
      • 2012-10-02
      相关资源
      最近更新 更多