Можете ли вы обнаружить перенаправление 301 с помощью объекта Microsoft.XMLHTTP? - PullRequest
3 голосов
/ 07 апреля 2010

Я использую VBScript и объект Microsoft.XMLHTTP для очистки некоторых веб-данных. У меня есть список URL-адресов для проверки, но, к сожалению, некоторые из них 301 перенаправляют на другие в списке, поэтому я получаю избыточные данные.

Можно ли вообще сделать так, чтобы объект XMLHTTP потерпел неудачу при перенаправлении 301? Или хотя бы кешировать оригинальный заголовок ответа? Или просто дайте мне знать, что случилось?

(примечания: у меня нет контроля над сервером, с которого я запрашиваю данные; когда я получаю новые данные, я могу проверить, не является ли он избыточным, но я бы хотел, если это возможно, избежать)

Любые идеи будут с благодарностью.

1 Ответ

2 голосов
/ 08 апреля 2010

Во-первых, ProgId, который вы должны использовать, это MSXML2.XMLHTTP.

Ответ: Нет - MSXML2.XMLHTTP автоматически следует за перенаправлениями.

Если вам нужно отслеживать и при необходимости не выполнять перенаправления, вы можете использовать объект WinHttp.WinHttpRequest , который, как и MSXML2.XMLHTTP, доступен для сценария. Фактически это объект, которому MSXML2.XMLHTTP делегирует для загрузки http.

Вам необходимо установить WinHttpRequestOptions на EnableRedirects.

Подробнее см. в этом разделе вопросов и ответов на сайте social.msdn.microsoft.com .

...