MSVC проглатывает const из основного параметра шаблона в вариационных шаблонных методах, используя constexpr if

Единственный вопрос, который имеет кучу ответов. Удостоверьтесь в путеводителе, которого я хотел бы, когда я пытался с этим справиться, чтобы он работал в 10:30 ночью в день истечения срока ... FB делает некоторые странные вещи с приложениями для холста, и хорошо, вас предупреждают. Если вы все еще здесь, и у вас есть приложение Rails, которое появится за Facebook Canvas, вам понадобится:

Gemfile:

gem "rack-facebook-signed-request", :git => 'git://github.com/cmer/rack-facebook-signed-request.git'

config / facebook.yml

facebook:
  key: "123123123123"
  secret: "123123123123123123secret12312"

config / application.rb

config.middleware.use Rack::Facebook::SignedRequest, app_id: "123123123123", secret: "123123123123123123secret12312", inject_facebook: false

config / initializers / omniauth.rb

OmniAuth.config.logger = Rails.logger
SERVICES = YAML.load(File.open("#{::Rails.root}/config/oauth.yml").read)
Rails.application.config.middleware.use OmniAuth::Builder do
  provider :facebook, SERVICES['facebook']['key'], SERVICES['facebook']['secret'], iframe:   true
end

application_controller.rb

before_filter :add_xframe
def add_xframe
  headers['X-Frame-Options'] = 'GOFORIT'
end

Вам нужен контроллер для вызова из настроек холста Facebook, я использовал /canvas/ и сделал маршрут для основного SiteController для этого приложения:


class SiteController < ApplicationController
  def index
    @user = User.new
  end
  def canvas
    redirect_to '/auth/failure' if request.params['error'] == 'access_denied'
    url = params['code'] ? "/auth/facebook?signed_request=#{params['signed_request']}&state=canvas" : "/login"
    redirect_to url
  end
  def login
  end
end

login.html.erb


<% content_for :javascript do %>
  var oauth_url = 'https://www.facebook.com/dialog/oauth/';
  oauth_url += '?client_id=471466299609256';
  oauth_url += '&redirect_uri=' + encodeURIComponent('https://apps.facebook.com/wellbeingtracker/');
  oauth_url += '&scope=email,status_update,publish_stream';
console.log(oauth_url);
  top.location.href = oauth_url;
<% end %>

Источники

  • Конфигурация, на мой взгляд, взята из примера omniauth.
  • Файл gem (который является ключом !!!) пришел из: файлов слайд-шоу, которые я узнал ...
  • Этот вопрос в стеке имел весь угол Xframe , поэтому вы получите пустое место, если вы не поместите этот заголовок в контроллер приложения.
  • И мой человек @rafmagana написал этот heroku guide , который теперь вы может принять за рельсы с этим ответом и плечами гигантов, в которые вы идете.

8
задан Sebastian.M 13 July 2018 в 10:27
поделиться