0

この例からデモアプリを開始します

https://github.com/Christian-Hansen/simple-oauth2

Google を認証して、AUTH オブジェクトを取得できます。認証オブジェクトを NSLog すると、access_token、有効期限、およびコードが表示されますが、更新トークンは表示されません。これは正常ですか? しばらくすると、リクエストを実行できず、アクセス トークンが期限切れになったことが原因です。以下も追加しました。

-(void)awakeFromNib メソッドと auth.canAuthorize

私は何か間違ったことをしますか?ありがとう

4

2 に答える 2

4

ありがとう@grobbins。ポイントは、リクエストにこれらのパラメータを追加する必要があるということです:

    viewController.signIn.additionalAuthorizationParameters = 
    [NSDictionary dictionaryWithObjects:[NSArray 
arrayWithObjects:@"offline",@"force", nil] forKeys:[NSArray arrayWithObjects:@"access_type",@"approval_prompt", nil]];

そこの誰かに役立つことを願っています!:-)

于 2013-04-17T14:01:13.777 に答える
0

authenticationWithServiceProvider を使用します。Google 以外のサービスにサインインする場合は、Google のトークン URL を使用しないでください。サービス プロバイダーのトークン URL を使用します。

Google にサインインするときは、認証オブジェクトを作成しないでください。GTMOAuth2ViewControllerTouch +controllerWithScope: を呼び出すだけです。ユーザーが正常にサインインすると、コールバックに認証オブジェクトが含まれます。

サンプル アプリの Google サービスへのログインと Google 以外のサービスへのログインを比較して、さまざまなアプローチを確認してください。

于 2013-04-06T16:16:52.003 に答える