Movable Type Data APIの使い方:authenticate()

Movable Type Data APIの使い方:authenticate()

Posted at September 26,2013 1:55 AM
Tag:[DataAPI, MovableType]

Movable Type 6から提供されるData APIの使い方を紹介します。

本エントリーではJavaScript SDK APIのauthenticate()を使った認証について解説します。

1.基本

authenticate()はユーザー認証を行うためのAPIです。

authenticate()を使ってログインするための簡単なサンプルを紹介します。

<script>
// API生成コード等は省略
 
$('#login').click(function(){
    api.authenticate({
        username: $('#user').val(),
        password: $('#pass').val(),
        remember: true
    }, function(response) {
        if (response.error) {
            // Handle error
        }
        $('#result').html('ログイン中');
    });
});
</script>
 
<input type="text" id="user" />
<input type="password" id="pass" />
<input type="button" id="login" value="ログイン" />
<div id="result"></div>

JavaScriptライブラリのインクルードやapiの生成については「Movable Type Data APIの使い方(JavaScript SDKを使ったオブジェクトの生成)」を参照してください。

また、エラーのハンドリングについては「Movable Type Data APIの使い方(エラーのハンドリング)」を参照してください。

なお、上記のサンプルでは結果表示処理でjQueryを利用しているので、jQueryのインクルードも行ってください。

2.パラメータ

authenticate()に設定するパラメータは次のとおりです。最初の3つは第1パラメータのハッシュとして設定します。

  • username:MTユーザー名(必須)
  • password:パスワード(必須)
  • remember:クッキーのexpire設定有無(true/false:オプション)
  • callback:コールバック処理(オプション)

公式リファレンスでは第2パラメータのcallbackはオプションのようですが、エラーの判定を行うには必要な処理だと思います。

3.レスポンス

レスポンスとして次のようなJSONデータが返却されます(MT6 rc2版時点でのサンプル)。

{"sessionId":"07b02pzHQadQFhSpypYExecxcgZmjNfLlv0TNJjH","accessToken":"MIi94CmsY1G2dvTgcS7JMVje91UXFKXgktxtQnM2","expiresIn":3600}

データの意味は次のとおりです。

sessionId
セッションID

accessToken
アクセストークン

expiresIn
アクセストークンの期限(秒)

authenticate()で認証に成功すると内部処理でstoreTokenData()が起動し、クッキーおよびlocalStorageにデータが保存されるようです。

また、authenticate()でのレスポンスはそのままstoreTokenData()のパラメータとして使えるようです。

上記のレスポンスとは別に、パラメータrememberに"true"を設定しておくと、クッキーのexpireが設定されます。

関連記事
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)