Как воспроизвести обнаруженную ошибку CSRF? - PullRequest
0 голосов
/ 19 декабря 2018

Я пытаюсь получить список страниц facebook в моей учетной записи facebook с моего сайта в Rails.При авторизации из Facebook из моего приложения, где я добавил protect_from_forgery with: :reset_session, я получаю сообщение об ошибке Error Authorizing. Please try again later. Csrf detected.Это случайная ошибка, которая не возникает на моем компьютере ни в одном браузере.Однако некоторые пользователи сообщают, что получают эту ошибку.Как воспроизвести эту ошибку и как ее можно исправить?

У меня есть следующий код в моем контроллере полномочий,

class AuthorizationsController < BusinessDashboardController
  def setup
    if params[:provider].to_s.casecmp(Authorization::FACEBOOK).zero?
      if params[:activity] && params[:activity] == "bot"
        # request.env['omniauth.strategy'].options[:scope] = "email,manage_pages,publish_pages,pages_messaging,pages_messaging_phone_number"
        request.env['omniauth.strategy'].options[:callback_url] = "#{request.base_url}/auth/facebook/callback?activity=bot"
        request.env['omniauth.strategy'].options[:client_id] = GlobalConfiguration.bot[:app_id]
        request.env['omniauth.strategy'].options[:client_secret] = GlobalConfiguration.bot[:app_secret]
      end
    end
    render text: "Omniauth setup phase.", status: 404
  end
end

В BusinessDashboardsController,

class BusinessDashboardController < ApplicationController
    protect_from_forgery with: :reset_session
end

В Gemfile

gem 'facebook-messenger',         '~> 1.0.0'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...