Имя: Пароль:
IT
Веб-мастеринг
Редирект 307
0 Dmitry_333
 
22.05.18
15:58
Доброго всем дня!

Столкнулся вот с таким перенаправлением при post-запросе.

"Распилил" полученный урл на хост и страницу и сделал запрос по-новой, н   о, страницу получил, но с невыполненным телом строки (т.е. будто это был GET запрос). Подскажите, пожалуйста, в чем может быть причина?
1 Dmitry_333
 
22.05.18
16:29
Наверное нужно код выложить:

Процедура ТестРаботаСайта()
    
НомерНакладной = "1071167838";    
    
Соединение = Новый HTTPСоединение("cdek.ru");

Запрос = Новый HTTPЗапрос("/track.html");

Результат = Соединение.Получить(Запрос);

Куки = Результат.Заголовки.Получить("Set-Cookie");
    Куки = СтрЗаменить(Куки, ";", Символы.ПС);
    ИдентификаторСессии = СтрПолучитьСтроку(Куки, 1);

//Получили редирект 307 - пилим строку урла и повторяем с новыми данными

URI = СтруктураURI(Результат.Заголовки.Получить("Location"));
    
Соединение = Новый HTTPСоединение(URI.Хост, URI.Порт);

ЗаголовокHTTP = Новый Соответствие();
ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded");
ЗаголовокHTTP.Вставить("Cookie", ИдентификаторСессии);
Запрос = Новый HTTPЗапрос(URI.ПутьНаСервере, ЗаголовокHTTP);
Запрос.УстановитьТелоИзСтроки("&order_id=" + СокрЛП(НомерНакладной));
Ответ = Соединение.ОтправитьДляОбработки(Запрос);
ОтветВВидеСтроки = Ответ.ПолучитьТелоКакСтроку("UTF-8");
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс