Salesforce.com Streaming API错误夏季14发布

时间:2014-07-23 13:48:40

标签: ruby-on-rails-4 salesforce

我在使用CookieJar的Salesforce.com Streaming API中遇到问题。

" CookieJar :: InvalidCookieError:基于请求URI主机名"

的域名不合适

Salesforce似乎将cookie域设置为" .salesforce.com"根据RFC 2109,它与相应的请求域不匹配。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:-1)

只需将以下内容添加到gemfile。

gem 'restforce', '~> 2.2', '>= 2.2.1'
gem 'faye', '0.8.9'
gem "cookiejar", :git => "https://github.com/MissionCapital/cookiejar.git"

现在创建一个初始化程序rest_for,如下所示。

require 'faye'

Restforce.configure do |config|
  config.username      = ENV['SALESFORCE_USERNAME']
  config.password      = ENV['SALESFORCE_PASSWORD']
  config.client_id     = ENV['SALESFORCE_CLIENT_ID']
  config.client_secret = ENV['SALESFORCE_CLIENT_SECRET']
  config.host          = ENV['SALESFORCE_HOST'] if ENV['SALESFORCE_HOST'].present?
  config.instance_url  = ENV['SALESFORCE_INSTANCE_URL'] if ENV['SALESFORCE_INSTANCE_URL'].present?
end

client = Restforce.new
credentials = client.authenticate! 

Thread.abort_on_exception = true
Thread.new {
  EM.run {
    # Subscribe to the PushTopic.
    client.subscribe 'YOUR_CHANNEL_NAME' do |message|
       p message.inspect
    end
  }
}

请记住使用适当的host进行开发和制作。在开发中使用test.salesforce.com

希望这可以帮助那些面临同样问题的人。