|
|
Работа с API сайта |
☑ |
|
0
Wefast
10.11.16
✎
16:29
|
Решил я тут попробовать порабоать с API сайта. И что то я совсем не понимаю
Там есть команды.
Процедура ВыполнитьHTTPЗапрос(ПолныйАдресРесурса)
СтруктураURI = СтруктураURI(ПолныйАдресРесурса);
HTTPСоединение = Новый HTTPСоединение("api.myshows.ru");
HTTPЗапрос = Новый HTTPЗапрос(profile/login?login=LOGIN&password=парольMD5);
Попытка
Результат = HTTPСоединение.Получить(HTTPЗапрос);
Сообщить(Результат.КодСостояния); // я залогинился, т.е. в результате код говорит о том что я залогинился
Исключение
Сообщить("Произошла сетевая ошибка!");
ВызватьИсключение;
КонецПопытки;
HTTPЗапрос2 = Новый HTTPЗапрос("profile/episodes/check/2341?rating=5");
Резульат2 = HTTPСоединение.Получить(HTTPЗапрос2);
//а тут пишет что я не авторизован.
КонецПроцедуры
Т.е. получается нужно отправлять все разом?
Пытался гуглить, но как мне кажется выдает какие то частные случаи в зависимость от сайта с которым происходит работа, что я ничего не понимаю
|
|
|
1
Лефмихалыч
10.11.16
✎
16:38
|
Я не понимаю, чего ты не понимаешь и в чем вопрос
|
|
|
2
Serginio1
10.11.16
✎
16:39
|
Ккууккии
|
|
|
3
Wefast
10.11.16
✎
16:45
|
(1) Я не понимаю что я делаю не так. Я обращаются к сайту. Логинюсь. Отправляю еще один запрос, а он его будто заново обрабатывает и пишет что я не залогинился.
Их что вот так последовательно отправлять бестолку?
Как тогда отправить их как единой целое.
|
|
|
4
Serginio1
10.11.16
✎
16:50
|
|
|
|
5
Лефмихалыч
10.11.16
✎
16:53
|
(3) у меня твой код работает
|
|
|
6
Лефмихалыч
10.11.16
✎
16:53
|
хотя нет - показалось. Тоже 401
|
|
|
7
Wefast
10.11.16
✎
17:00
|
(4) попытался я указать 3 параметр в Получить() в виде структуры с куками из ответа, но все так же.
GETЗаголовки = Новый Соответствие();
GETЗаголовки.Вставить("Cookie", Результат.Заголовки["Set-Cookie"]);
GETЗаголовки.Вставить("Connection", "keep-alive");
HTTPЗапрос2 = Новый HTTPЗапрос("profile/");
Результат2 = HTTPСоединение.Получить(HTTPЗапрос2,,GETЗаголовки);
|
|
|
8
Wefast
10.11.16
✎
17:13
|
GETЗаголовки = Новый Соответствие();
GETЗаголовки.Вставить("Cookie", Результат.Заголовки["Set-Cookie"]);
GETЗаголовки.Вставить("Connection", "keep-alive");
HTTPЗапрос2 = Новый HTTPЗапрос("profile/",GETЗаголовки);
Результат2 = HTTPСоединение.Получить(HTTPЗапрос2);
Вот так заработало
|
|
|
9
Wefast
10.11.16
✎
17:13
|
Теперь осталось с JSON разобраться
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший