0

私のアプリケーションに電話番号の確認用のコードを追加しました。ユーザーが自分の電話番号を確認すると、その番号がデータベースに追加されます。AndroidとTwitterファブリック:TwitterのファブリックデジットAPIで特定の電話番号を送信する

ユーザーログインが再度行われた場合は、ユーザーに再度電話番号を確認するよう依頼されますが、twitterファブリックで任意の番号を確認できますが、twitterファブリックの桁でTwitterのファブリックに提供する電話番号を確認します。私のデータベース。

答えて

1

ここからファブリックチームのトッド。

ここで最も重要な考慮事項は、お客様のサーバーから桁の詳細を取得し、直接私たちに送信することです。そうすれば、あなたのサーバーは信頼できるユーザー情報を受け取ります。

まず、ユーザID、電話番号、OAuthトークンを要求するDigitsを照会します。これを実現するには、OAuth Echoを使用する必要があります。

OAuthエコーヘッダーを生成します。

DigitsOAuthSigningクラスは、ユーザーセッションの承認ヘッダーを生成する便利な方法を提供します。 DigitsOAuthSigningは、TwitterAuthConfigTwitterAuthTokenに依存しています。

TwitterAuthConfigクラスは、TwitterまたはDigitsアプリケーションを識別するための資格情報をカプセル化します。 Digitsクラスからこのオブジェクトを取得できます。

TwitterAuthTokenクラスは、TwitterのDigitsユーザーのユーザー資格情報を表します。このオブジェクトはTwitterSessionまたはDigitsSessionから取得できます。

TwitterAuthConfig authConfig = TwitterCore.getInstance().getAuthConfig(); 
TwitterAuthToken authToken = session.getAuthToken(); 
DigitsOAuthSigning oauthSigning = new DigitsOAuthSigning(authConfig, authToken); 

OAuth Echoを使用する最も簡単な方法は、クライアントで承認ヘッダーを生成することです。これらのヘッダーを使用して、アプリケーションの外部からOAuth Echoリクエストを作成します(Webサーバーサーバーなどから)。

Map<String, String> authHeaders = oauthSigning.getOAuthEchoHeadersForVerifyCredentials(); 

authHeadersマップはX-Auth-Service-ProviderX-Verify-Credentials-Authorizationキーが含まれています。あなたのWebサーバーはX-Verify-Credentials-Authorizationの値をとり、それを使用してX-Auth-Service-ProviderにURLへの要求のためにAuthorizationヘッダーを設定します。ヘッダーがあれば、Webサーバーに送信して資格情報を確認できます。あなたがすべきあなたのウェブホスト上

セキュリティを強化するため
URL url = new URL("http://api.yourbackend.com/verify_credentials.json"); 
HttpsURLConnection connection = (HttpsURLConnection)url.openConnection(); 
connection.setRequestMethod("GET"); 

// Add OAuth Echo headers to request 
for (Map.Entry<String, String> entry : authHeaders.entrySet()) { 
    connection.setRequestProperty(entry.getKey(), entry.getValue()); 
} 

// Perform request 
connection.openConnection(); 

、:

検証X-Verify-Credentials-Authorizationoauth_consumer_keyヘッダーの値は、ユーザーがあなたのサイトにログインされていることを確認するために、OAuthコンシューマキーと一致していること。 oauthライブラリを使用してヘッダーを解析し、キー値を明示的に一致させることができます。 parse(params['X-Verify-Credentials-Authorization']).oauth_consumer_key=<your oauth consumer key>.

ヘッダーを確認し、uriを解析し、ドメインがapi.digits.comであることを確認して、数字を呼び出すようにします。

検証verify_credentialsからの応答が数字セッションにアプリ独自のセッションを結びつけるために、署名に追加のパラメータを追加することを検討してユーザーが正常に

にログインしていることを確認するために呼び出します。代わりのフォームgetOAuthEchoHeadersForVerifyCredentials(Map<String, String> optParams)を使用して、OAuthサービスのURLに追加するパラメータを指定します。これらのパラメータがサービスURLに存在し、API要求が成功したことを確認します。

Reference on Verifying Digits Users in Android

関連する問題