Должен ли параметр redirect_uri для токена доступа совпадать с параметром, используемым для токена запроса

#asp.net #facebook

#asp.net #Facebook

Вопрос:

Заранее приношу извинения за некоторую путаницу в терминологии. Я немного запутался во всем процессе OAUTH.

Я заметил, что мне нужно передать redirect_uri методу facebook grant access token, хотя я не вижу, как он используется. Мой сервер выполняет запрос и получает ответ, поэтому перенаправление не выполняется. Кроме того, кажется, что uri перенаправления в вызове токена предоставления доступа должен быть тем же, что и в вызове токена доступа запроса (я понимаю, что это необходимо в вызове токена доступа запроса, но не в вызове токена предоставления доступа).

Не уверен, что это необходимо, но вот код, который я использую для того, чтобы facebook предоставил токен доступа.

     var url = String.Format(
      "https://graph.facebook.com/oauth/access_token?client_id={0}amp;client_secret={1}amp;code={2}amp;redirect_uri={3}", 
      this.AppId, 
      this.AppSecretKey, 
      code, 
      System.Web.HttpContext.Current.Server.UrlEncode(this.CallbackUrl)
     );
  

Ответ №1:

Да, чтобы Facebook мог проверить запрос на обмен кода авторизации на токен доступа, параметр redirect_url должен быть одинаковым для обоих запросов.

Вы правы в том, что для получения токена доступа фактическое перенаправление не выполняется, токен доступа возвращается в теле HTTP-ответа.