サンプル/PHP/ユーザーAPI/食事の一覧取得
ダウンロード:sample_mobadaiapi_meal_list.php
<?php
/**
* モバイルダイエットAPI ver.1 クライアントサンプル 食事一覧取得
*
* モバイルダイエットAPIを使用して食事の一覧を取得するサンプル<br />
*
* @package MobadaiSample
* @author west@imd.co.jp
* @version 1.0
*/
require_once 'HTTP/Request2.php';
define(APPKEY, "*****__FILL_IT!!__*****"); // このクライアントのアプリケーションキー
define(APPSEC, "*****__FILL_IT!!__*****"); // このクライアントのアプリケーションシークレット
define(MYSCHEME, "*****__FILL_IT!!__*****"); // スキーマ, http or https
define(MYSERVER, "*****__FILL_IT!!__*****"); // サーバー名
define(MYACCESSCODE, "*****__FILL_IT!!__*****"); // アクセスコード
define(MY_CHARSET, "UTF-8"); // 結果の文字コード指定
define(MY_RESTYPE, "json"); // 結果のフォーマット
define(CGI_VERSION, "v"); // バージョン
define(CGI_COMMAND, "c"); // コマンド
define(CGI_CATEGORY, "Category"); // カテゴリー
define(CGI_OPERATION, "Operation"); // コマンド
define(CGI_APPKEY, "AppKey"); // アプリケーションキー
define(CGI_AUTHTYPE, "UserAuth"); // 認証タイプ
define(CGI_USERID, "uid"); // ユーザーID
define(CGI_LOGINID, "loginid"); // ログインID
define(CGI_PASSWORD, "password"); // パスワード
define(CGI_STRUCTDATA, "StructData"); // アップロードXML
define(CGI_FORMAT, "Format"); // フォーマット
define(CGI_CHARSET, "Charset"); // 文字コード
$apiurl = MYSCHEME."://".MYSERVER."/services/api/".MYACCESSCODE."/";
echo "--- Request URL\n";
echo $apiurl."\r\n";
$my_uid = '****対象アカウントのモバイルダイエットID****'; // どちらか必須
$my_loginid = '****対象アカウントのログインID****'; // どちらか必須
$my_password = '****パスワード****';
$request = new HTTP_Request2($apiurl, HTTP_Request2::METHOD_POST);
$request->setConfig(
array(
'timeout' => 300,
'ssl_verify_host' => false,
'ssl_verify_peer' => false,
)
);
if( $my_uid ){
$idkey = CGI_USERID;
$idval = $my_uid;
}
if( $my_loginid ){
$idkey = CGI_LOGINID;
$idval = $my_loginid;
}
// クエリーを作成
$xml = "<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<QuerySet>
<qtype>UserMealLog</qtype>
<startdate>2014/01/01 00:00:00</startdate>
<enddate>2014/03/01 00:00:00</enddate>
<detail>0</detail>
</QuerySet>";
// リクエストパラメータを生成
$req_param = array(
CGI_VERSION => 1,
CGI_APPKEY => APPKEY,
CGI_COMMAND => "Bu",
CGI_CATEGORY => "UM",
CGI_OPERATION => "gsl",
CGI_AUTHTYPE => "userhashbb",
$idkey => $idval,
CGI_PASSWORD => sha1(APPSEC.$my_password),
CGI_STRUCTDATA => $xml,
CGI_FORMAT => MY_RESTYPE,
CGI_CHARSET => MY_CHARSET,
);
echo "--- Request Param\n";
var_dump($req_param);
echo "\n";
$request->addPostParameter($req_param);
try {
// リクエスト送出
$response = $request->send();
}
catch (Exception $e) {
echo "--- Exception\n";
echo $e->getMessage();
echo "\n";
exit(0);
}
if( $response->getStatus() != 200 ){
echo "HTTP Response Status Error ".$response->getStatus()."\n";
exit(0);
}
$json_resp = json_decode($response->getBody());
echo "--- Response Param\n";
if( $json_resp ){
var_dump($json_resp);
} else {
echo $response->getBody();
}
echo "\n";
?>
アプリケーションキー: VxXEBg9fHDLnzuNb
アプリケーションシークレット: IWMtlWEB76IEHYNGMucZCyqX
$ php ./sample_mobadaiapi_meal_list.php
--- Request URL
http://******.mobadai.jp/services/api/***/
--- Request Param
array(11) {
["v"]=>
int(1)
["AppKey"]=>
string(16) "VxXEBg9fHDLnzuNb"
["c"]=>
string(2) "Bu"
["Category"]=>
string(2) "UM"
["Operation"]=>
string(3) "gsl"
["UserAuth"]=>
string(10) "userhashbb"
["loginid"]=>
string(12) "qojzpsrhyqdi"
["password"]=>
string(40) "19a1b010db87117beefa50d118377d337fbafccd"
["StructData"]=>
string(215) "<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<QuerySet>
<qtype>UserMealLog</qtype>
<startdate>2014/01/01 00:00:00</startdate>
<enddate>2014/03/01 00:00:00</enddate>
<detail>0</detail>
</QuerySet>"
["Format"]=>
string(4) "json"
["Charset"]=>
string(5) "UTF-8"
}
--- Response Param
object(stdClass)#6 (2) {
["api_result"]=>
bool(true)
["struct"]=>
array(8) {
[0]=>
object(stdClass)#7 (2) {
["mealid"]=>
string(21) "M27c7eae252f4384e8cd3"
["hashkey"]=>
string(40) "8575b6e13437287e8d30851753b7e3e39d69da5c"
}
[1]=>
object(stdClass)#8 (2) {
["mealid"]=>
string(21) "M27c7eae252f43960abb6"
["hashkey"]=>
string(40) "110c1bc0121902ae5ad74027c114a415ac68e1c9"
}
[2]=>
object(stdClass)#9 (2) {
["mealid"]=>
string(21) "M27c7eae252f43a8fa3de"
["hashkey"]=>
string(40) "436b52bbbaad8a193b720e40f90021d029bdc350"
}
[3]=>
object(stdClass)#10 (2) {
["mealid"]=>
string(21) "M27c7eae252f43ab43aee"
["hashkey"]=>
string(40) "24eb337d8e95fef7a60f6b2e31d7f32a463a433b"
}
[4]=>
object(stdClass)#11 (2) {
["mealid"]=>
string(21) "M27c7eae252f43b8d5e3f"
["hashkey"]=>
string(40) "a40bfc5c33a4ea9a4c980cfa9510841001e45405"
}
[5]=>
object(stdClass)#12 (2) {
["mealid"]=>
string(21) "M27c7eae252f43b8dbaef"
["hashkey"]=>
string(40) "0dcd349f10520a6b85206f4bdb6b3910e135a17a"
}
[6]=>
object(stdClass)#13 (2) {
["mealid"]=>
string(21) "M27c7eae252f43c913533"
["hashkey"]=>
string(40) "cc983eb6d77c4ba98d79d4ce2e8da613a7617db9"
}
[7]=>
object(stdClass)#14 (2) {
["mealid"]=>
string(21) "M27c7eae252f43c91ee40"
["hashkey"]=>
string(40) "a41469fec63e78a71356df92c447c758f3896ecf"
}
}
}
$