サイトのトップへ戻る

Twitter 開発者 ドキュメント日本語訳

Digits機能: 電話番号でのログイン

Web用のDigits機能を使うと、電話番号ログイン機能をあなたのウェブサイトに組み込み、iOS と Android上で動くモバイルアプリの補完をすることが簡単にできます。 Digits 機能はTwitter で使われているグローバルで信頼性のあるインフラストラクチャで ユーザーの電話番号を確認し、簡単にあなたのウェブサイトに組み込めます。



Digits 認証を設定する

Web用 Digits 機能の SDK は https://cdn.digits.com/1/sdk.js にホストされています。このスクリプトは軽量で、キャッシュでき、外部依存がありません。; 他のサードパーティ製ライブラリをインクルードする必要はありません。新しい機能を追加する際にこれを自動的にアップロードしますが、あなたのサイトを破壊するようなことは決してありません。

この機能には三つのメソッドが使用できます:

  • init - あなたの公開コンシューマーキーで SDK を設定する。
  • getLoginStatus - ユーザーが既にDigits機能にログインしているか、あなたのアプリが認証されているかを調べます。
  • logIn - ログインフローを開始します。


まずはじめに、Web用Digits 機能をあなたのウェブサイトにインクルードします:

<head>
  <script id="digits-sdk" src="https://cdn.digits.com/1/sdk.js" async></script>
</head>


それから、Fabricでアプリ用に生成したコンシューマーキーを使ってWeb用Digits機能を初期化します。 キーはFabric ウェブダッシュボードのTwitterキットタブの下にあります(Digits機能は、apps.twitter.comから生成したキーでは動作しません)。

/* Fabric で生成したアプリケーションのコンシューマーキーを使ってWeb用Digis機能を初期かします */
document.getElementById('digits-sdk').onload = function() {
  Digits.init({ consumerKey: 'yourConsumerKey' });
};


最後に、ログインボタンにログイン機能を付与します:

/* Launch the Login to Digits flow. */
function onLoginButtonClick(event){   
  Digits.logIn()
    .done(onLogin) /*handle the response*/
    .fail(onLoginFailure);
}


ログインボタンをタップするとWeb用Digits のポップアップが表示され、ユーザーがポップアップ上で操作してDigitsのフローを完了できます。




ユーザーが既にWeb用Digits機能にログインしている場合、 Digits will intelligently omit SMS confirmation the next time the user logs into any other sites that are also powered by Digits, asking the user to confirm with one tap:




成功した場合、Digits Web で OAuth エコー 応答が使用できるようになります。

/* ユーザーの身元を確認してログインさせる。 */
function onLogin(loginResponse){    
  // あなたのサーバにハンドラを送信し、Digits のAPIを呼び出してユーザーの身元確認をする
  var oAuthHeaders = loginResponse.oauth_echo_headers;
  var verifyData = {
    authHeader: oAuthHeaders['X-Verify-Credentials-Authorization'],
    apiUrl: oAuthHeaders['X-Auth-Service-Provider']
  };

  $.post('/verify', verifyData)
    .done(function(){ window.reload(); });
}


From your web server, over SSL, you can use this response to securely request the userID, phone number, and oAuth tokens of the Digits user. この方法では、OAuthを設定し、Digits機能のためにコールバックURLを設定して用意する必要がありません。

追加のセキュリティ対策として、 you will want to on your webhost:

  • Validate the oauth_consumer_key header value matches your oauth consumer key, to ensure the user is logging into your site
  • Verify the X-Auth-Service-Provider header, by parsing the uri and asserting the domain is api.twitter.com or www.digits.com, to ensure you call Twitter.
  • Validate the response from the verify_credentials call to ensure the user is successfully logged in


Web用 Digits 機能のデモ

ここにCannonball を使った簡易でものアプリがあります。Cannonball は、直ぐにでもあなたのウェブサイトに雛形として組み込むことができるテンプレートです。: