Версия для печати темы (https://pro1c.org.ua/index.php?s=58117900b9c717b40d9ae1a214b33d5e&showtopic=67300)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Вся 1С _ Интеграция с Salesforce

Автор: SomeOne. 26.07.23, 12:59

Добрый день.
Подскажите, пожалуйста, кто может работал с обменом с Salesforce
Пытаюсь получить данные:

Сервер = "***.my.salesforce.com";
Логин = "***@***.com";
Пароль = "***";
Соединение = Новый HTTPСоединение(Сервер,,Логин,Пароль,,,Новый ЗащищенноеСоединениеOpenSSL());
ТекстЗапроса= "/services/data/v58.0/query/?q=SELECT+Id+from+Contact";
Запрос = Новый HTTPЗапрос(ТекстЗапроса);
Ответ = Соединение.Получить(Запрос);

Ошибка 401
По документации я так понял, что в заголовках еще надо передавать что-то
(пример из документации Sforce-Call-Options: client=caseSensitiveToken; defaultNamespace=battle
Подскажите что нужно в заголовках указывать? Или может вообще не в этом дело?
Спрашивал у админа сайта, он ссылку на пример запроса дает, хотя вряд ли в самом запросе дело, тут явно я что-то не так с авторизацией делаю

Автор: Vofka 27.07.23, 8:53

401 обычно возвращается, если логин/пароль не тот.

Автор: SomeOne. 27.07.23, 12:10

Да я понимаю, но логин/пароль тот. Поэтому все что приходит в голову, это что авторизацию надо как-то в заголовках указывать, но как нигде найти не могу, а админ сайта ответить не может.

Автор: mut 27.07.23, 12:50

SomeOne. @ Сегодня, 12:10 * ,

Если логин и пароль передаются в заголовке запроса, при Basic авторизации нужно добавить заголовок с именем Authorization, в него нужно передать строку "Имя:Пароль" закодированную в Base64

Автор: SomeOne. 28.07.23, 13:59

Не помогло(

Автор: nick_hammer 11.04.24, 15:42

SomeOne. @ 28.07.23, 13:59 * ,
Скоріш за все в самому SF не дали дозвіл на запроси зі сторони.
Чи намагались ви підєднатись до SF з Postman? Скоріш за все якщо вийде підєднати його то й 1С вийде.

Є сценарії по котрим треба пройти щоб запустити це.
Якщо коротко, то в SF треба створити Connected App, в ній дозволити OAuth, Manage data API.
далі там же отримати Consumer Key та Consumer Secret.

з цим вже йти в postman або 1С та налаштовувати авторизацію за типом Bearer Token.

Якщо це актуально, то можу спробувати допомогти.

Мене цікавить інший аспект цього питання. чи може 1С приймати REST запити або може в неї є якісь Platform Events?
Чи залежить це від версії самої 1С (7, 8, 8.3)?

Автор: kihor 11.04.24, 17:01

Цитата(nick_hammer @ 11.04.24, 16:42) *
Мене цікавить інший аспект цього питання. чи може 1С приймати REST запити або може в неї є якісь Platform Events?
Чи залежить це від версії самої 1С (7, 8, 8.3)?


В 1С 8.3 можливо визначати http-методи для роботи с REST запитами. Після визначення http-методів в конфигурації, базу потрібно опублікувати на веб-сервері.
В 1С 7 немає таких можливостей.

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua