Я занимаюсь разработкой приложения на Rails с использованием OmniAuth, OmniAuth-salesforce и этого драгоценного камня: https://github.com/heroku/databasedotcom
Я жестко запрограммировал "client_id" и "client_secret" в моем приложении. Затем для каждого пользователя, который проходит аутентификацию с помощью Saleforce, я записываю его токен oauth, идентификатор пользователя и URL-адрес экземпляра. При всем этом я создаю интересы от их имени.
Все работает, если пользователь из той же учетной записи, где я получил "client_id" и "client_secret". Однако, если я аутентифицируюсь с пользователем из другого экземпляра Salesforce, я получаю ошибку «недопустимый идентификатор перекрестной ссылки».
Я хочу, чтобы мое приложение отправляло запросы пользователям из разных экземпляров Salesforce. Разве это не возможно?
Вот мой полный код:
client = Databasedotcom::Client.new :client_id => SALESFORCE_CLIENT_ID, :client_secret => SALESFORCE_CLIENT_SECRET
client.authenticate :token => user.salesforce_token, :instance_url => user.salesforce_instance_url
client.materialize("Lead")
lead = Lead.new(:FirstName => first_name, :LastName => last_name, :Email => email,
:Phone => phone, :OwnerId => user.salesforce_id, :IsConverted => false,
:IsUnreadByOwner => true, :Company => contact_company)
lead.save
Спасибо за любой совет!