У меня есть приложение с запасом, которое возвращает данные на основе символа запаса.
В принципе, вызов AJAX переходит в ~/Stocks/GetStockData/{id}
, где символ {id}
является символом запаса.
Это отлично работает... вообще. Сегодня я обнаружил, что запасы "Progressive Waste Solutions Ltd.", которые имеют символ BIN, взорвались. Если посмотреть на данные возврата в браузере, я вижу, что он возвращает 404 для этого символа.
Мне пришло в голову, что BIN может быть зарезервированным словом, запрашивающим какой-то двоичный файл или что-то в этом роде. Это так? Как мне обойти это без особых усилий? Существуют ли другие ключевые слова, которые также могут вызвать эту проблему?
UPDATE
Per Artyom Neustroev, это может быть зарезервированное ключевое слово и будет защищено от маршрутизации. Он ссылался на статью, в которой упоминался веб-сайт, в котором говорилось об этом, чтобы добавить следующий конфигурационный параметр в файл конфигурации:
<configuration>
<system.web>
<httpRuntime relaxedUrlToFileSystemMapping="true"/>
<!-- ... your other settings ... -->
</system.web>
</configuration>
... который заставил меня дальше. При запуске моего сайта с этим вызовом ajax была возвращена ошибка 404.8:
HTTP Error 404.8 - Not Found
The request filtering module is configured to deny a path in the URL that contains a hiddenSegment section.
Хорошо, это действительно сортировка имеет смысл. Маршрутизация была настроена так, чтобы кто-то не попал в мой каталог bin
, и я одобряю такую профилактику.
Итак, мне интересно, как указать определенную группу методов, чтобы получить такие вещи, как bin
или CONFIG
(теоретически), нормально, если для этого существует определенный маршрут?