Есть ли надежный способ создать ошибку в веб-запросах? - PullRequest
0 голосов
/ 23 сентября 2009

Извините, если вопрос неоднозначный, я не знал, как его сформулировать кратко.

Во всяком случае, вот сделка. Я создаю расширение для браузера с менеджером закачек для некоторой обработки закачек POST.

Поэтому, прежде чем передать запрос POST, я отправляю промежуточный запрос POST на тот же URL-адрес с некоторыми специальными заголовками, которые возвращают информацию о том, что мне нужно сделать, к исходным данным POST перед отправкой. Заголовки обрабатываются фильтром ISAPI, а промежуточный запрос никогда не просматривается базовым веб-приложением. Затем расширение браузера выполнит некоторую обработку исходного POST-запроса и отправит его.

Это все отлично работает. За исключением того, что он будет работать только при подключении к серверу, на котором установлен мой фильтр ISAPI, и поведение не определено на любом другом сервере, который этого не делает.

Итак, я ищу некоторые идеи, чтобы определить, поддерживает ли сервер эту функциональность, возможно, добавив что-то в промежуточный запрос, который отключит предсказуемую ошибку с веб-сервера.

Я попытался установить что-то в заголовке запроса "Expect", но это не кажется надежным; многие веб-приложения просто игнорируют это.

Я попытался изменить заголовок «Принять» на что-то странное, но оно тоже игнорируется.

Одна вещь, которую я пробовал, что , кажется, работает, - это использовать специальный метод запроса, такой как MYPOST, который, по-видимому, приводит к ошибке 403, 405 или 501 на большинстве серверов, которые я попробовал это с. Но у меня есть ощущение, что это вызовет проблемы с некоторыми прокси, и может просто интерпретироваться как GET на некоторых серверах. Хотя не уверен.

Есть еще идеи?

1 Ответ

1 голос
/ 23 сентября 2009

Если ваша ISAPI DLL может быть настроена для вызова определенных URL-адресов, это даст вам надежную ошибку 404 на серверах, на которых не установлена ​​DLL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...