|
Подключение из базы 1с к http сервису из другой базы 1ски | ☑ | ||
---|---|---|---|---|
0
New_Tesla
30.12.19
✎
07:14
|
Всем салют!!!
вот такой вопрос возник есть http сервис, мне нужно сегодня сделать обработку по нему, а я никак не подключусь к сервису, хотя он опубликован и итд как нужно прописать строки подключения, подскажите, если кто подключался, тк е могу в гугле найти инструкции вот сервис: https://pastenow.ru/8ea1826668d2996d91b28584602904ca шаблон сервиса: /oid/{orderid}/status/{status}/store/{store}/sku/{sku}/amount/{amount}/iin/{iin}/sn/{sn}/fn/{fn} хотя база опубликована, вот другой сервис из той же базы https://pastenow.ru/1d6243abcd2e3d5caf9bdf18f6ca7f3c |
|||
1
Мимохожий Однако
30.12.19
✎
07:17
|
Это не сложно. Нажми Я справа от темы ветки
|
|||
2
New_Tesla
30.12.19
✎
07:55
|
(1) вот именно!
что не понятно как по этим иструкциям подключаться вот например мне нужен запрос без параметров как мне его написать? я пишу Полизователь = "Admin"; Пароль = "admin"; Сервер = "localhost"; Запрос = Новый HTTPЗапрос; Запрос.АдресРесурса = "/getstores"; Соединение = Новый HTTPСоединение(Сервер + "/InfoBase12/hs/getstores",80,"Admin","admin"); Результат = Соединение.ОтправитьДляОбработки(Запрос); Сообщить("Нам вернули код: " + Результат.КодСостояния); http://catalog.mista.ru/public/955078/ а он не хотит |
|||
3
New_Tesla
30.12.19
✎
07:56
|
пользователь и пароль это к самой базе имеется ввиду?
|
|||
4
Chameleon1980
30.12.19
✎
08:12
|
вот это, наверное, уже убрать нужно
https://prnt.sc/qhdcqg |
|||
5
Chameleon1980
30.12.19
✎
08:12
|
оно у тебя в запрос есть
|
|||
6
New_Tesla
30.12.19
✎
08:18
|
(5) не ,так тоже не хотит
|
|||
7
ДенисЧ
30.12.19
✎
08:38
|
у меня вот так и работает
Состояние("Подключение к базе..."); соед = Новый HTTPСоединение("localhost", 80, "HTTPUser", "qq"); адр = "/Base/hs/Refs/" + ТребуемыйУИД; запрос = Новый HTTPЗапрос(адр); отв = соед.Получить(запрос); Если отв.КодСостояния <> 200 Тогда Сообщить("Ошибка получения информации"); Возврат; КонецЕсли; тело = отв.ПолучитьТелоКакСтроку(); Если Лев(тело, 5) <> "<?xml" Тогда Сообщить("Получили непонятное"); сообщить("" + тело); Возврат; КонецЕсли; |
|||
8
New_Tesla
30.12.19
✎
09:16
|
(7) а ТребуемыйУид это какое значение?
|
|||
9
ДенисЧ
30.12.19
✎
09:21
|
(8) НужныйСправочник.УникальныйИдентификатор()
|
|||
10
ДенисЧ
30.12.19
✎
09:21
|
Если что - это в ОФ работает.
|
|||
11
sikuda
30.12.19
✎
10:30
|
(0) (0) /{База}/hs/oid/{orderid}/status/{status}/store/{store}/sku/{sku}/amount/{amount}/iin/{iin}/sn/{sn}/fn/{fn} - ты точно по этому шаблону идешь и ничего не пропускаещь?
|
|||
12
New_Tesla
30.12.19
✎
10:46
|
(11) я щас хочу просто отябы вызвать http сервис , без параметров
т.е там около 7 сервисов, обработку мне надо сделать по тому , который с параметрами, тренькаюсь я на другом http://catalog.mista.ru/public/955078/ |
|||
13
New_Tesla
30.12.19
✎
10:46
|
||||
14
Chameleon1980
30.12.19
✎
10:47
|
соединение.сервер тебе что в отладке показывает?
|
|||
15
New_Tesla
30.12.19
✎
11:07
|
(14) там вроде норм, подключение есть
https://pastenow.ru/fdb15e13027bb9131c1ef7ce91951884 но! при попытке получить ответ выдает 405 ошибку https://pastenow.ru/3607358342fc76d75dbd78a59d2 |
|||
16
New_Tesla
30.12.19
✎
11:08
|
||||
17
ssh2006
30.12.19
✎
11:19
|
Кину свой пример, post запрос из отчета одной базы к сервису в другой базе. Передаются параметры ИНН и даты периода
HTTPСоединение = Новый HTTPСоединение("computer_name", 80, Пользователь, Пароль); АдресРесурса = "base_name/hs/dt/report1" + "/" + Организация.ИНН + "/" + Формат(ДатаНач, "ДФ=yyyyMMdd") + "/" + Формат(ДатаКон, "ДФ=yyyyMMdd"); HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса); HTTPЗапрос.УстановитьТелоИзСтроки(Строка); Попытка HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос); Исключение Сообщить("Произошла сетевая ошибка при обращении к серверу!" + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Важное); Возврат; КонецПопытки; КодСостояния = HTTPОтвет.КодСостояния; Строка = HTTPОтвет.ПолучитьТелоКакСтроку(); Если КодСостояния = 200 Тогда ИначеЕсли КодСостояния = 401 Тогда Сообщить("Ошибка подключения: проверьте логин/пароль...", СтатусСообщения.Важное); ИначеЕсли ПустаяСтрока(Строка) Тогда Сообщить("Ошибка, код ответа сервера: " + КодСостояния, СтатусСообщения.Важное); Иначе Сообщить("Ошибка, код ответа сервера: " + КодСостояния + ", " + Строка, СтатусСообщения.Важное); КонецЕсли; Если КодСостояния <> 200 Тогда Возврат; КонецЕсли; |
|||
18
Chameleon1980
30.12.19
✎
11:51
|
Сделай запрос конструктором, а не через адрес ресурса
Запрос=Новый HTTPЗапрос("/getstores"); |
|||
19
New_Tesla
30.12.19
✎
12:09
|
Ок, щас пробую
кстати вопрос = а пользователь и пароль это пользователь под которыр запускается http сервис, или пользователь и пароль к базе? |
|||
20
ДенисЧ
30.12.19
✎
12:28
|
(19) 1сный пользователь
|
|||
21
New_Tesla
30.12.19
✎
18:01
|
КРЧ вот работающий запрос)
//GET Соединение = Новый HTTPСоединение("localhost"); Заголовки = Новый Соответствие(); Заголовки.Вставить("Authorization", "Basic QWRtaW46YWRtaW4="); ЗапросHTTP = Новый HTTPЗапрос("/InfoBase12/hs/getstores/", Заголовки); Ответ = Соединение.Получить(ЗапросHTTP); ТелоОтвета = Ответ.ПолучитьТелоКакСтроку(); СтруктураОтвета = ПрочитатьТелоОтвета(ТелоОтвета); Ошибка = ""; Функция ПрочитатьТелоОтвета(Данные) ЧтениеJSON = Новый ЧтениеJSON; ЧтениеJSON.УстановитьСтроку(Данные); Структура = ПрочитатьJSON(ЧтениеJSON); ЧтениеJSON.Закрыть(); Возврат Структура; КонецФункции &НаСервере Процедура ВызватьHttpСервис () //GET Соединение = Новый HTTPСоединение("localhost"); Заголовки = Новый Соответствие(); Заголовки.Вставить("Authorization", "Basic QWRtaW46YWRtaW4="); ЗапросHTTP = Новый HTTPЗапрос("/InfoBase12/hs/getstores/", Заголовки); Ответ = Соединение.Получить(ЗапросHTTP); ТелоОтвета = Ответ.ПолучитьТелоКакСтроку(); СтруктураОтвета = ПрочитатьТелоОтвета(ТелоОтвета); Ошибка = ""; КонецПроцедуры; |
|||
22
New_Tesla
30.12.19
✎
18:04
|
Чудеса!
Крч чтоб работать с ними нада постман еще скачать а так вообще есть ли курсы отдельные по энтим вещам?) |
|||
23
New_Tesla
30.12.19
✎
22:01
|
теперь самый интересный вопрос = как обратиться к сервису
вот с таким шаблоном) энто то метод не фурычит) |
|||
24
New_Tesla
30.12.19
✎
22:01
|
/oid/{orderid}/status/{status}/store/{store}/sku/{sku}/amount/{amount}/iin/{iin}/sn/{sn}/fn/{fn}
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |