EC-CUBEにも、実はWebAPIがあった!
プラグインが追加されたEC-CUBE2.12以降で利用可能です。
デフォルトだとAPI利用不可になっているので、管理画面にログインして
システム設定->パラメーター設定の一番最後にある「API_ENABLE_FLAG」をfalse->trueに変更して下さい。
以下のようにして利用できます。
http://www.sample.com/eccube/html/api/xml.php?Service=Core&Operation=GetVersion
返ってくるデータは、以下の三種類の中から選べます。
「xml.php」
「json.php」
「php.php]
引数は二種類あるのですが、Serviceの方は使われていないので適当な値を入れておけば良いようです。
もう一つのOperationが重要で、以下の様な操作可能。
オペレーション | 認証の必要性 | 説明 |
---|---|---|
GetVersion | 不要 | EC-CUBEのバージョンを取得出来る。テスト用途などに。 |
ItemLookup | 不要 | 商品ID等をキーに商品データを取得 |
ItemSearch | 不要 | 商品データを検索 |
BrowseNodeLookup | 不要 | 商品カテゴリを指定して商品データを取得 |
CartCreate | 要 | カートの新規作成 |
CartAdd | 要 | カートへの商品追加 |
CartGet | 要 | カートの取得 |
CartModify | 要 | カートの修正 |
CartClear | 要 | カートのクリア |
実際のAPIのコードは以下の所にあります。PHPファイルを追加すれば独自APIも追加できる?
eccube\data\class\api\operations
AddrFromZip.php
BrowseNodeLookup.php
CartAdd.php
CartClear.php
CartCreate.php
CartGet.php
CartModify.php
Default.php
GetVersion.php
ItemLookup.php
ItemSearch.php
そしてカートへの操作は、当然ログインが必要です。でも、よく見たらログインのAPIが無い…。
どうやらログイン&カート操作関係は、まだ未実装のようです。あらら(^_^;)
参考URL
http://ec-cube.systemfriend.co.jp/technique/a20130901/
http://blog.ville.jp/2013/09/30/1829