Почему конечная точка токена get_access не распознает URL перенаправления facebook - PullRequest
0 голосов
/ 15 июня 2019

Я настраиваю новый логин, чтобы получать сообщения с бизнес-страницы в фейсбуке, а также доступ к форме в мессенджере.Поэтому я устанавливаю логин на Facebook в своем приложении.затем facebook отправил мне сообщение об ошибке

Мне удалось получить код входа в мой URL-адрес перенаправления.однако в функции обратного вызова я пытаюсь получить токен доступа к Facebook и получаю стопку. Я проверил настройки URL-адреса перенаправления facebook, а также мой код. Я уверен, что URL-адрес перенаправления в настройках Facebook и мое приложение одинаковы. Спасибоза помощь от ваших людей

[HttpGet, Route("facebookCallBack"), AllowAnonymous]
        public async Task<IHttpActionResult> facebookCallBack([FromUri]string code)
        {
            string facebookAppId = ConfigurationManager.AppSettings["FacebookAppId"];
            string facebookAppSecret = ConfigurationManager.AppSettings["FacebookAppSecret"];
            string fbBaseUrl = ConfigurationManager.AppSettings["FacebookApiRootUrl"];
            var redirectUrl = "{my url}";
            var url = fbBaseUrl + "oauth/access_token?" 
                    + "client_id=" + facebookAppId 
                    + "&client_secret=" + facebookAppSecret 
                    + "&code=" + code 
                    + "&redirect_uri="+ redirectUrl;

            var client = new HttpClient();

            var request = await client.GetAsync(url);
            var strContent = await request.Content.ReadAsStringAsync();
            return Json(new { data = strContent , url= Request.RequestUri.AbsoluteUri , urlx = redirectUrl });
        }

Я ожидаю вывода фактического токена доступа, но Facebook дает мне сообщение «Ошибка проверки кода подтверждения. Пожалуйста, убедитесь, что ваш redirect_uri идентичен тому, который вы использовали в диалоге OAuth».

1 Ответ

0 голосов
/ 17 июня 2019

Извините, друзья, я сделал глупую ошибку, я использовал myapp.mydomain.com/facebookCallBack вместо myapp.mydomain.com/facebookcallback. Я думал, что браузер и API автоматически переведут заглавные буквы в строчные, и хотя ядумал, что Facebook не будет проверять верхний / нижний регистр на URL перенаправления.Я был неправ, Facebook API будет проверять точное соответствие URL-адреса перенаправления и перенаправления с учетом регистра.

...