我正在尝试从 GitHub 页面处理 Harvest php API 示例。
这是代码,但无论我尝试做什么都没有输出。如果我使用 Chrome Postman 应用程序,我可以检索数据。我不确定我做错了什么。机密信息已被删除。任何帮助深表感谢。
<?php
$url = "https://company.harvestapp.com/?daily=";
$temp = getURL($url);
echo $temp;
function getURL($url) {
$credentials = "<email>:<password>";
$headers = array(
"Content-Type: application/xml",
"Accept: application/xml",
"Authorization-Basic: " . base64_encode($credentials)
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_USERAGENT, "test app site");
$data = curl_exec($ch);
curl_close($ch);
if ($data !=false){
return $data;
}
else
return "no data";
}
?>
这是我从 curl_error 函数得到的错误:
HTTP/1.1 401 未经授权的服务器:nginx 日期:2014 年 5 月 9 日星期五 22:59:27 GMT 内容类型:application/xml;字符集 = utf-8 传输编码:分块连接:保持活动状态:401 未经授权的缓存控制:私有,无存储,无缓存,最大年龄 = 0,必须重新验证 X 帧选项:SAMEORIGIN X -Served-From: https://.harvestapp.com/ X-UA-Compatible: IE=Edge,chrome=1 Set-Cookie: _harvest_sess=; 域=.harvestapp.com;路径=/; 安全的; HttpOnly X-Request-Id: e9d6eb74-5c73-430e-9854-ebf6f1c527c8 X-Runtime: 0.019223 您必须通过 Harvest 身份验证才能完成此请求。