1

そのドメインにリンクされたFacebookアプリケーションを使用するRoRWebサイトがdomain1.comにあります。

domain2.comがdomain1.comと同じサーバーを指すようにしたいので、domain1.com/fooと同等domain2.com/fooです。

明らかに(私は思う)2番目のFacebookアプリケーションを作成する必要があります。これは、domain1.comにリンクされているアプリケーションは、domain2.comの下のサイトにアクセスすると機能しないためです。

ただし、facebooker.ymlでfacebooker2に、リクエストが1つのホストからのものである場合はあるアプリケーションを使用し、別のホストからのものである場合は別のアプリを使用するように指示する方法がわかりません。

これを行う方法、または同じ結果を達成する何かを行う方法はありますか?

4

1 に答える 1

1

Facebooker2にはこれに対する組み込みのサポートはありませんが、サポートさせることができます。

このファイルの機能の一部をオーバーライドする必要があります。

facebooker2 / lib / facebooker2.rb

具体的には、この方法:

def self.load_facebooker_yaml
  config = YAML.load(ERB.new(File.read(File.join(::Rails.root,"config","facebooker.yml"))).result)[::Rails.env]
  raise NotConfigured.new("Unable to load configuration for #{::Rails.env} from facebooker.yml. Is it set up?") if config.nil?
  self.configuration = config.with_indifferent_access
end

最初の行を次のように変更します。

config = YAML.load(ERB.new(File.read(File.join(::Rails.root,"config","facebooker.yml"))).result)[::Rails.env][::request.domain]

次に、facebooker.ymlファイルに次のような新しいレベルを追加します。

production:
  domain1.com:
    app_id: ####
    secret: #####
    aki_key: #####
  domain2.com
    app_id: ####
    secret: #####
    aki_key: #####
development:
  localhost:
    app_id: ####
    secret: #####
    aki_key: #####

それがどうなるか教えてください。

于 2011-01-16T22:53:45.360 に答える