私は 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 Unauthorized サーバー: nginx 日付: 2014 年 5 月 9 日金曜日 22:59:27 GMT Content-Type: application/xml; charset=utf-8 Transfer-Encoding: チャンク 接続: キープアライブ ステータス: 401 Unauthorized Cache-Control: プライベート、ストアなし、キャッシュなし、max-age=0、再検証が必要 X-Frame-Options: 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 で認証を受ける必要があります。