Имя: Пароль:
1C
1С v8
HTTP сервисы как настроить
,
0 location
 
naïve
19.08.22
12:37
Добрый день. Подскажите создал HTTP сервис разбираюсь, теперь как его отладить, но что то не получается.
Опубликовал на веб сервере
когда пишу http://localhost/test - test имя при публикации
выдает страницу Index of / test, где лежит файл default.vrd
пробую перейти на  http://localhost/test/hs/orders/order/accepted и получаю страницу 404 метод использую пост в ответе просто вернуть статус 200
1 Kassern
 
19.08.22
12:39
(0) Отладка хттп сервисов:
Отладка->Подключение->Автоматическое подключение->хттп сервисы
2 Sanek1
 
19.08.22
12:41
(0) А http сервис опубликован? Там при публикации для http сервисов отдельная вкладка. И если http сервис сделан через расширение то тоже надо галку ставить
3 location
 
naïve
19.08.22
12:44
(1) сделано не подключается
4 location
 
naïve
19.08.22
12:45
(2) опубликован, стоит галочка публиковать по умолчанию и в списке напротив сервиса
5 RomaH
 
naïve
19.08.22
12:47
http://localhost/test/hs/orders ... а дальше что?
6 RomaH
 
naïve
19.08.22
12:48
orders - сервис
order - допустим шаблон
accepted - параметр?
7 Kassern
 
19.08.22
12:49
(3) Логично, раз ошибка 404. Тупо не доходит до отладки
8 Галахад
 
гуру
19.08.22
12:58
Наверное стоит картинки сервиса выложить.
9 RomaH
 
naïve
19.08.22
13:00
(0) могу ошибаться - но у тебя путь уж больно длинный
10 location
 
naïve
19.08.22
13:01
orders -корневой URL
order/accepted - Шаблон URL
11 RomaH
 
naïve
19.08.22
13:06
... анонимная проверка подлинности ? IIS?
12 location
 
naïve
19.08.22
13:18
(11) Apache
13 mTema32
 
19.08.22
13:55
(0) "hs/orders/order/accepted" вот здесь ошибка
14 location
 
naïve
19.08.22
13:57
(13) какая?
уже сделал так hs/orders/getdata та же фигня
15 location
 
naïve
19.08.22
13:58
через POSTMAN отправил пост запрос, получил то же что и на странице выдает 404 ошибка
16 mTema32
 
19.08.22
14:06
(14) (15) Логично черт побери.
Ошибка в том, что наименование шаблона сервиса не совпадает с тем, что вы адресной строке написали.
Зайдите в описание сервиса и там есть шаблон, который должен быть вызван в адресной строке.
17 location
 
naïve
19.08.22
14:15
(16) как это не совпадает?
HTTP сервис - получение заказов
корневой URL - orders
шаблон URL - getdata ,шаблон - /getdata/
метод POST
18 Kassern
 
19.08.22
14:17
загуглите за http сервисы, в первых строчках будет статья, как с нуля его поднять. Проделайте в точности все шаги с такими же наименованиями как в статье. Если все работает, то сравнивайте уже с вашим сервисом, где вы что не так указали.
19 Kassern
 
19.08.22
14:17
Может не на тот порт долбитесь, либо он закрыт, либо файрвол не пускает. Посмотрите логи самого апатча
20 mTema32
 
19.08.22
14:26
Если все правильно опубликовано, то http://localhost/test у вас должен веб-клиента базы открывать. Открывает?
21 location
 
naïve
19.08.22
14:53
(20) да
там файл лежит default.vrd я не опубликовывал сам тонкий клиент
22 location
 
naïve
19.08.22
15:38
(21) может нужно в этом файле прописать логин и пароль от базы? или это не обязательно?
23 Kassern
 
19.08.22
15:42
(22) если логин и пароль не прописан, то по переходу по ссылке, у вас его запросит браузер
24 mTema32
 
19.08.22
15:43
(22) Ох ты ж.
Курите мануалы по http-сервисам.
Да, желательно служебного пользователя создать для сервиса. Прописать его/пароль в default.vrd и еще проверить все ли правильно в конфигурационном файле апача.

Если будет открываться веб-клиент по http://localhost/test, тогда далее добавляем в строку hs/ИмяСервиса/ИмяШаблон
И будет вам счастье.
25 location
 
naïve
19.08.22
15:44
(24) я опубликовал только 1 http сервис, не будет у меня веб клиента
26 mTema32
 
19.08.22
15:45
+(24) Итого должно быть такое http://localhost/test/hs/ИмяСервиса/ИмяШаблон
27 location
 
naïve
19.08.22
15:45
(26) я читал, так и есть
28 location
 
naïve
19.08.22
15:46
(23) браузер не спрашивает авторизацию сразу 404 ошибку
29 Kassern
 
19.08.22
15:46
(28) да лаадно, у меня вот спрашивает, что я делаю не так?
30 location
 
naïve
19.08.22
15:47
(29) вот я спрашиваю что я не так делаю
31 mTema32
 
19.08.22
15:50
(29) У вас вся база опубликована. А человек хочет один сервис выставить. Мне кажется так не получится.
32 mTema32
 
19.08.22
15:50
(30) Надо сделать так чтоб веб-клиент запускался. Тогда точно все заработает.
33 Kassern
 
19.08.22
15:52
(31) у меня вообще база не опубликована. Пару http сервисов, один в расширении и еще веб сервис один прикручен. Все работает и не жжужит)
34 Kassern
 
19.08.22
15:54
Во первых нужно проверить апач. Он должен WORK возвращать
Потом проверить верно ли указано имя публикации на веб сервере
Проверить настройки апача и ssl есть есть
35 location
 
naïve
19.08.22
16:01
(34)
1) показывает "Yes" Web сервер
2) проверил - верно.
3) какие настройки должны быть?
36 Kassern
 
19.08.22
16:04
(35) Скиньте скрины с корневым URL вашего сервиса и шаблоном вызываемого метода
37 location
 
naïve
19.08.22
16:12
38 alarm2020
 
19.08.22
16:15
(0) А сам метод сделали?
39 location
 
naïve
19.08.22
16:23
(38) да
Функция gettestGet(Запрос)
  Ответ = Новый HTTPСервисОтвет(200);
  Тело = Запрос.ПолучитьТелоКакСтроку();
  Ответ.УстановитьТелоИзСтроки("ОК");
  
  Возврат Ответ;
КонецФункции
40 Kassern
 
19.08.22
16:26
(37) у меня пока нет возможности ваши скрины глянуть, доступа нет. Вечерком гляну, либо на другой ресурс скиньте
41 location
 
naïve
19.08.22
16:26
(40) на какой ресурс?
42 Kassern
 
19.08.22
16:27
на яндекс диск тот же либо, imgbb
43 location
 
naïve
19.08.22
16:29
44 Kassern
 
19.08.22
16:37
(43) В шаблоне метода просто пропишите /gettest и обновите публикацию. После сам апач перезапустите и протестите
45 Kassern
 
19.08.22
16:41
ну и метод поставьте GET у gettest (Не только имя, еще и свойство HTTP-метод)
46 mTema32
 
19.08.22
16:43
(44)(45)+
47 arsik
 
гуру
19.08.22
16:47
(0) У тебя в конфиге апача возможно не прописана библиотека 1С. http://localhost/test - не должен выводить страницу с содержимым каталога. Апач просто не знает что с этим файлом делать вот и показывает тебе содержимое.
Апач после настроек перезапускал?
48 arsik
 
гуру
19.08.22
16:48
+(47) ...вручную
49 Kassern
 
19.08.22
16:49
и да, когда 1ска говорить, перезапустить мол апач и ты жмякаешь ДА, то не факт, что он перезапустится)) Лучше вручную его перезапускать, когда что-то правили.
50 Kassern
 
19.08.22
16:51
И вместо YES. Обычно дефолтный апач пишет It works! когда обращаешься к локалхосту, или где там он опубликован
51 location
 
naïve
19.08.22
17:04
(44) метод get стоит
прописал просто /gettest
перезапустил апач 404
(47) где должна быть прописана библиотека?
52 Kassern
 
19.08.22
17:05
(51) апач откуда брали и какой сборки?
53 Kassern
 
19.08.22
17:05
версия какая апача
54 location
 
naïve
19.08.22
17:07
(53) 2.4
55 Kassern
 
19.08.22
17:09
По этой статье скачивали и настраивали апач? https://its.1c.ru/db/metod8dev/content/5978/hdoc
56 Kassern
 
19.08.22
17:13
IIS при этом у вас, надеюсь, отключен?
57 location
 
naïve
19.08.22
17:18
(56) где посмотреть?
58 Kassern
 
19.08.22
17:21
(57) загуглите, ничего сложного тут нет. Вот в первой выдаче http://pyatilistnik.org/kak-otklyuchit-iis-v-windows/
59 Kassern
 
19.08.22
17:21
из-за IIS может вообще апач не запускаться, так как 80 порт может быть заблокирован
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший