お世話になります。
先日devCampに参加し、RESTAPIの基礎を学びました。
早速、PHPから登録するコードを作成したのですが、うまく動きません。
間違っている箇所をご指摘いただけると幸いです。
firefox開発ツールのconsoleで試したものが下記でうまく登録できました。
var body={
“app”:“63”,
“record”:{
“整理番号”:{“value”:1001},
“RecTime2”:{“value”:“6:00:00”}
}
};
kintone.api(
kintone.api.url(“/k/v1/record”,true),
“POST”,
body,
function(resp){
console.log(JSON.stringify(resp));
},function(e){
console.log(“error:”+e.message);
}
);
同じ事をPHPで作成したものが下記ですが、エラー(failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request)が出ます。
※コードはCstap落合さんが2014/7/22に投稿された、「REST APIの認証設定について」を流用しました。なお、落合さんが作成されたコードではエラーは出ません。
// リクエストヘッダ
$header = array(
"Host: " . $subDomain . “.cybozu.com:443”,
“Content-Type: application/json”,
“X-Cybozu-API-Token: “. $API_TOKEN
);
// アプリID
$appId = 99;
// HTTPコンテキスト
$context = array(
“http” => array(
“method” => ‘PUT’,
“header” => implode(”\r”, $header),
“content” => json_encode(
array(
“app” => $appId,
“record” => array(
“整理番号” => array(“value” => 1001),
“RecTime2” => array(“value” => “6:00:00”)
)
)
)
)
);
$result = file_get_contents(
“https://” . $subDomain . “.cybozu.com/k/v1/record.json”, // URI
false, // use_include_pathは必要ないのでfalse
stream_context_create($context) // コンテキストの生成
);
よろしくお願いいたします。