В начале сеанса 1С отправляет GET запрос вида http://<сайт>/<путь> /1c_exchange.php?type=catalog&mode=checkauth. На него мы должны вернуть success и информацию о cookie. Непонятен сам процесс авторизации. Как передаётся логин и пароль? как проверить,что запрос осуществляется ни кем попало?
Есть готовое решение на php для авторизации?
Какие способы аутентификации поддерживает 1С предприятие 8.3?
(1) Запустил соединение из 1С с авторизацией и без, поймал фидлером. Отличаются они на строку
Authorization: Basic dXNyOnB3ZA== , что раскладывается на "usr:pwd" , введённые мною для теста.
Гуглите в сторону базовой авторизации.
Соединение = Новый HTTPСоединение(адрес, порт, что-то там, включая ЛОГИН, ПАРОЛЬ и сертификат для https - достаточно создать пустой в большинстве случаев);
Здесь адрес - это именно доменный адрес, т.е. "www.myshoponbitrix.com" (мли даже без WWW - даже можно айпишник). В порт пишите номер порта, если он не равен "80", в ЛОГИН и ПАРОЛЬ - тот самый логин и пароль для авторизации.
2. Создаем запрос.
Запрос = Новый HTTPЗапрос(относительный УРЛ);
В относительный УРЛ можно прописать как раз это самое "/1c_exchange.php?type=catalog&mode=checkauth" (прям вот так и прописать).
3. Отправляем запрос на сайт.
Результат = Соединение.Получить(Запрос);
Тут мы посылаем GET. Получаем результат запроса - тот самый суксь или отсыл к праотцам. Для POST нужно использовать Результат = ОтправитьДляОбработки(Запрос) - в общем просто все.
(1) Запустил соединение из 1С с авторизацией и без, поймал фидлером. Отличаются они на строку
Authorization: Basic dXNyOnB3ZA== , что раскладывается на "usr:pwd" , введённые мною для теста.
Гуглите в сторону базовой авторизации.