cURL 导致空,尽管 JSON 有效



我正在卷曲一个丢弃 json 结果的 url。不过,卷曲的结果始终为 NULL。

主.php

function getUserSettings(){
...
$json = json_encode($userSettings);
header('Content-Type: application/json');
return $json;
}

获取用户设置.php

...
$api->uid = isset($_SESSION['uid']) ? $_SESSION['uid'] : die();
$result = $api->getUserSettings();
echo $result;
...

设置.php

<?php
session_start();
if(isset($_SESSION['uid'])) {
//get the user settings
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_URL, 'https://www.url.com/api/getstgs');
$result = curl_exec($ch);
curl_close($ch);
$obj = json_decode($result, true);
print_r($obj);die();
}
...
generate html
...
?>

json 如下所示:

{">

lcns":[{"product_name":"addon: addonname","license_key_decrypted":">

XXXXXXXXXXXXXXXXXXXX expires_at XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

根据显示的代码,cURL 调用预计会"失败"。

这是因为 cURL 发出的新请求不会自动包含会话信息或 Cookie。可以使用命令行中的 cURL 或新隐身窗口中的浏览器选项卡复制此类行为。(检查来自其他工具的 Web 请求的结果可以比代码更改更快地诊断许多问题。

除非之前已建立会话"uid"值,否则以下内容预计会使请求失败,而不是返回所需的 JSON。调用 cURL 的请求中是否存在会话"uid"值并不重要:cURL 发出的请求是独立的

$api->uid = isset($_SESSION['uid']) ? $_SESSION['uid'] : die();

相关内容

  • 没有找到相关文章

最新更新