More Related Content
PDF
PDF
ミニセミナー「PowerCMS X の製品概要と PowerCMS 5 との違い」 PDF
PDF
WebMatrix 2 と Azure を使ったスマートフォンサイト構築のすすめ PDF
CMSとして選択肢のひとつ「Movable Type」をおすすめする理由 PDF
PPTX
PDF
Microsoft Azure ~ Web開発 & モバイル開発者向け情報 ~ What's hot
PPTX
Movable typeseminar 20120925 PDF
[MW06] PaaS を活用した、ハイコストパフォーマンスなウェブサイト構築・運用・メンテナンス PDF
[AC10] Azure Stack パート2 ~企業が求めるこれからのハイブリッドクラウド設計~ PPTX
クライムどこでもセミナー:『どこから調査する?』の悩みを解消!失敗しない仮想化DB監視術 PDF
PDF
PDF
PDF
PDF
Vs2013 multi device shosuz PDF
WordPress 使いのためのMicrosoft Azure 超入門 PDF
Web アプリケーション パターンと .NET - CLR/H 88 回 ~雪まつりデイ!~ バージョン PDF
JAWS-UG CLI専門支部 #74 Amazon Kinesis Firehose 入門 PPTX
PDF
JAWS-UG CLI専門支部 #81 EC2 Systems Manager 入門 PDF
[MW11] OSS on Azure で構築する ウェブアプリケーション PDF
[Japan Tech summit 2017] MAI 002 Similar to 「Restful API」
PDF
PDF
PPTX
未来のwebに欠かせないREST APIをApache Solr + Drupal8で実装しよう@PHPカンファレンス2016 東京 PPTX
エンジニアのための勉強会 #3 『RESTful API』 PPT
PDF
PPTX
ネットワーク機器のAPIあれこれ入門(NetOpsCoding#2) PPTX
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう PDF
クロスドメインアクセスを理解してWeb APIを楽しく使おう 「Restful API」
- 1.
- 2.
PowerCMS Xの RESTfulAPI ⽤のエンドポイントに対して
クライアント等のシステムからリクエストを送信することで
PowerCMS X に登録された情報を取得・変更・登録・検索する事が可能と
なります。
クライアント(ブラウザ等) PowerCMS X
リクエスト
レスポンス(JSON)
RESTful API の概要
- 3.
- 4.
- 5.
リレーションを含むオブジェクトJSONの形式
{
"id" : "オブジェクトID",
"カラム名1": "カラム1の値",
"数値型単⼀リレーションカラム" : {
"id" : "オブジェクトID",
"カラム名1" : "カラム1の値",
"カラム名2" : "カラム2の値"
},
"複数リレーション型カラム" : [
{
"id" : "オブジェクトID",
"カラム名1" : "カラム1の値",
"カラム名2" : "カラム2の値"
},
{
"id" : "オブジェクトID",
"カラム名1" : "カラム1の値",
"カラム名2" : "カラム2の値"
}
]
}
返却される値
- 6.
- 7.
- 8.
PowerCMS Xの RESTfulAPI を使⽤するにあたって
JavaScript SDKを公開しています。
RESTful API JavaScript SDK
• アプリや他のサービスとのスムーズな連携
• Jamstack によるコンテンツの配信
• 検索やフォームなどの動的コンテンツの提供
• etc…
GitHub https://github.com/alfasado/pt-restful-api-client
- 9.
ワークスペースID1の記事⼀覧を取得する場合
RESTful API JavaScriptSDK 記述例1
const client = new PTRESTfulAPIClient('/powercmsx/api', 1); // 引数: APIパス、バージョン
const params = {
sort_by: 'published_on',
sort_order: 'desc'
};
const response = await client.listObjects('entry', 1, params); // 引数: モデル名, ワークスペースID,
パラメーター
const json = await response.json();
// json.itemsにモデルのオブジェクト⼀覧が格納されている
※ await を使用しているので非同期関数の中で使用します。
async function getList() {
const response = await client.listObjects('entry', 1);
const json = await response.json();
}
- 10.
- 11.
ワークスペースID1のentryモデルに新規記事を登録する場合
RESTful API JavaScriptSDK 記述例3
const client = new PTRESTfulAPIClient('/powercmsx/api', 1);
// 認証
const name = 'username';
const password = 'password';
const authResponse = await client.authentication(name, password);
const authData = await authResponse.json();
const token = authData.access_token;
// 投稿する情報
const data = {
title: 'Hello World!',
text: '本⽂を⼊⼒します。',
basename: 'hello_world',
status: 4,
};
const response = await client.createObject('entry', 1, token, data); // 引数: モデル名, ワークスペースID, トークン,
リクエストボディ
- 12.
メソッド⼀覧
RESTful API JavaScriptSDK で利用可能なメソッド
メソッド名( client.method ) 機能
authentication ユーザー認証を実⾏します
getScheme スキーマの取得を⾏います
createObject オブジェクトを作成します
listObjects オブジェクト⼀覧を取得します
getObject オブジェクトを取得します
updateObject オブジェクトを更新します
deleteObject オブジェクトを削除します
getContactToken コンタクト(フォーム)のトークンを取得します
confirmContact コンタクト(フォーム)データのバリデーションを実⾏します
submitContact コンタクト(フォーム)データを送信します
searchObjects 全⽂検索(SearchEstraierプラグイン)を実⾏します
runFetch Fetch APIの呼び出しを⾏います。任意のエンドポイント(プラグイン
で拡張したエンドポイントなど)に対してリソース取得が可能なメソッ
ドです。引数に応じて適切なリクエストを発⾏します。
- 13.
- 14.
- 15.