1

ユーザーがアプリケーションをインストールすると、最初の GET パラメータなしでページがリダイレクトされます。

例えば:

  1. ユーザーがリンクでアプリを開く: http://apps.facebook.com/[app]/?request_ids=123&fb_source=wall
  2. このアプリはインストールされていないため、Facebook は次のページにリダイレクトします: https://www.facebook.com/dialog/oauth?client_id=[app]redirect_uri=http://apps.facebook.com/[app]/?scope =user_about_me,email&response_type=コード
  3. ユーザーが必要な権限を確認すると、次のページにリダイレクトされます: https://apps.facebook.com/[app]/?code=[認証コード]

最終的な URL では、最初の GET パラメーターが欠落しているため、ユーザーがどの URL からアプリケーションにアクセスしたかを検出できません。

次の C# コードを使用して、ログイン URL を生成します。

dynamic parameters = new ExpandoObject();
parameters.client_id = _configuration.AppId;
parameters.redirect_uri = _configuration.CanvasUrl;
parameters.scope = String.Join(",", accessScope);
parameters.response_type = "code";
return _facebookClient.GetLoginUrl(parameters);

parameters.redirect_uri 値で GET パラメーターを使用できません (Facebook エラー - URL が正しくありません)。

初期 GET パラメータの使用方法を教えてください。

4

1 に答える 1

0

redirect_uri認証の両方のステップで同じパラメータを使用する必要があります -

そこに十分な情報が含まれていませんが、認証ダイアログが正常に読み込まれていると思われます。ユーザーはそれを受け入れていますが、同じリダイレクト uri (パラメーター付き)code使用していないため、 を に交換しようとすると失敗します。access_token

于 2012-08-02T09:43:11.500 に答える