ver.1サポートサイト

clickcount – 更新

最終更新日:2020年02月26日

clickcount – 更新

クリックカウント設定を更新するサンプルプログラムです。
本サンプルプログラムは外部呼出し(スパイラル以外のサーバから動作させる場合)と内部呼出し(スパイラル内部で動作させる場合)と分けて記載をしています。
利用する用途によって使用するサンプルプログラムの使い分けを行ってください。
※外部呼出しに利用するサンプルプログラムにはスパイラル内のWebコンポーネントで使用できない関数などが含まれる場合がありますのでご注意ください。
使用できないPHPの関数について、PHP利用時の注意事項をご覧ください。
※内部呼出しを利用する場合はアカウント内APIの設定を「ON」に変更する必要があります。

関連するページ
スパイラルAPIの使い方
APIリファレンス:クリックカウント設定
アカウント内API

外部呼出しを利用する場合

<?php
/**
* [ 概要 ]
* スパイラルのAPIを使ったサンプルプログラムです。
*
* [ サンプルで行う事 ]
* - クリックカウント設定を更新します。
*
* UTF8で保存してください。
*/
/**
* [サンプルを動かすための準備]
*
* PHPにcurlライブラリが組み込まれている必要があります。
* 参考:http://www.php.net/manual/ja/intro.curl.php
*
*/
// ロケータのURL (変更の必要はありません)
$locator = "https://www.pi-pe.co.jp/api/locator";
// スパイラルの操作画面で発行したトークンを設定します。
$TOKEN = "XXXXXXXXXXXXXXXXXXXXXXXXXXX";
$SECRET = "XXXXXXXXXXXXXXXXXXXXXXXXXXX";
// API用のHTTPヘッダ
$api_headers = array(
"X-SPIRAL-API: locator/apiserver/request",
"Content-Type: application/json; charset=UTF-8",
);
// 送信するJSONデータを作成
$parameters = array();
$parameters["spiral_api_token"] = $TOKEN; //トークン
// 送信用のJSONデータを作成します。
$json = json_encode($parameters);
// curlライブラリを使って送信します。
$curl = curl_init($locator);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST , true);
curl_setopt($curl, CURLOPT_POSTFIELDS , $json);
curl_setopt($curl, CURLOPT_HTTPHEADER , $api_headers);
curl_exec($curl);
// エラーがあればエラー内容を表示
if (curl_errno($curl)) echo curl_error($curl);
$response = curl_multi_getcontent($curl);
curl_close($curl);
$response_json = json_decode($response , true);
// サービス用のURL
$APIURL = $response_json['location'];
// API用のHTTPヘッダ
$api_headers = array(
"X-SPIRAL-API: clickcount/update/request",
"Content-Type: application/json; charset=UTF-8",
);
// リクエストデータを作成
$parameters = array();
$parameters["spiral_api_token"] = $TOKEN; //トークン
$parameters["passkey"] = time(); //エポック秒
$parameters["title"] = "clickcount_test";//変更前のタイトル
$parameters["update_title"] = "clickcount_test_after";//変更後のタイトル
$parameters["jump_url"] = "https://XXXXXXXXXXXXXX.jp" ;//JUMP先URL
$parameters["start_date"] = "20xx/01/01 08:30";//カウント開始日時
$parameters["end_date"] = "20xx/12/31 20:30";//カウント終了日時
// 署名を付けます
$key = $parameters["spiral_api_token"] . "&" . $parameters["passkey"];
$parameters["signature"] = hash_hmac('sha1', $key, $SECRET, false);
// JSON形式にエンコードします
$json = json_encode($parameters);
echo "===> clickcount/update\n";
// curlライブラリを使って送信します。
$curl = curl_init($APIURL);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST , true);
curl_setopt($curl, CURLOPT_POSTFIELDS , $json);
curl_setopt($curl, CURLOPT_HTTPHEADER , $api_headers);
curl_exec($curl);
// エラーがあればエラー内容を表示
if (curl_errno($curl)) echo curl_error($curl);
$response = curl_multi_getcontent($curl);
curl_close($curl);
// 画面に表示
// 配列にしたい時は json_decode($response, true); とします。
//echo "$response\n\n";
print_r(json_decode($response, true));
?>

内部呼出しを利用する場合

<?php
/**
* [ 概要 ]
* スパイラルのAPIを使ったサンプルプログラムです。
*
* [ サンプルで行う事 ]
* - クリックカウント設定を更新します。
*
* UTF8で保存してください。
*/
$api_communicator = $SPIRAL->getSpiralApiCommunicator();
$request = new SpiralApiRequest();
$request->put("title", "clickcount_test"); //変更前のタイトル
$request->put("update_title", "clickcount_test_after"); //変更後のタイトル
$request->put("jump_url", "https://XXXXXXXXXXXXXX.jp"); //JUMP先URL
$request->put("start_date", "20xx/01/01 08:30"); //カウント開始日時
$request->put("end_date", "20xx/12/31 20:30"); //カウント終了日時
$response = $api_communicator->request("clickcount", "update", $request);
print_r($response);
?>