mt-data-api.js の getToken でトークンを取得してから jQuery.ajax で独自エンドポイントに POST するサンプル

Movable Type の JavaScript SDK の getToken を使ってアクセストークンを取得し、そのアクセストークンを使って、独自で追加したエンドポイントのうち、認証が必要なエンドポイントに POST する例です。

ここでは、独自で追加した MT オブジェクトを product としています。

(function($){
  // Data API インスタンス (mtappVars が定義済みの前提)
  mtappVars.DataAPI = new MT.DataAPI({
    baseUrl:  'http://path-to-data-api/mt-data-api.cgi',
    clientId: 'MTAppjQuery'
  });
  // getToken でアクセストークンを取得
  mtappVars.DataAPI.getToken(function(data){
    if (data.error) {
      if (data.error.code === 401) {
        location.href = mtappVars.DataAPI.getAuthorizationUrl(location.href);
      } else {
        alert(data.error.message);
        return;
      }
    }
    if (!data.accessToken) {
      alert('An accessToken error occurred.');
      return;
    }
    // 新しい product オブジェクトを作成
    var product = {
      name: 'Ajax Test 01'
    };
    // jQuery.ajax で POST
    $.ajax({
      url: '/mt/mt-data-api.cgi/v3/sites/1/recommends',
      method: 'POST',
      headers: {
        'X-MT-Authorization': 'MTAuth accessToken=' + data.accessToken
      },
      data: {
        recommend: JSON.stringify(product)
      }
    }).done(function(res){
      console.log(res);
    });
  });
})(jQuery);

簡単ですが、以上です。

  • このエントリーをはてなブックマークに追加
Just a second...