WebResource.axd, используемый элементами управления Telerik, возвращает 404 - PullRequest
0 голосов
/ 21 июня 2019

Я пытаюсь портировать через некоторые веб-формы ASP.NET на Angular SPA, который использует веб-приложение ASP.NET для своего API, использующего HttpHandler. Эти веб-формы хранятся в предыдущих приложениях, и для переноса их на Angular недостаточно времени. Поскольку «API» - это просто веб-приложение, мне было поручено перенести старые веб-формы такими, какие они есть, и вызывать их напрямую, когда они необходимы. Это оказалось легче сказать, чем сделать.

Большинство веб-форм используют элементы управления Telerik Web UI, и, хотя в старом приложении они работают нормально, я получаю ошибки при попытке использовать их в новом приложении SPA. Ошибки, которые я получаю, связаны с файлом WebResource.axd, используемым Telerik RadScriptManager для получения CSS для их обложек и элементов управления.

<telerik:RadScriptManager ID="RadScriptManager1" EnableCdn="true" Runat="server"></telerik:RadScriptManager>

отказался применять стиль от «http://localhost:4200/WebResource.axd?d=Nhf6TpUj19KZ9rhEj2xtdXI4Hvhmsd09azmFWZrRyjmNWnWj90Ry29x3vlROlp8oQRQUFY2XAcBlRgHG0yyI3g169FGMhhp0ifPm9gRbq2ol4eqe8Vt6HY3ZPDAMENZl0&t=636952472576064298' потому что его тип MIME ('text / html') не является поддерживаемой таблицей стилей MIME тип и строгая проверка MIME включена.

С помощью статей Google и SO кажется, что эта ошибка возникает, когда веб-ресурс пытается получить доступ, возвращает HTML, а не ожидаемый MIME-тип. В моем случае ресурс представляет собой таблицу стилей CSS.

Чтобы попытаться выяснить проблему, я взял URI веб-ресурса в примере выше в браузере и зафиксировал результат с помощью Fiddler.

Fiddler captures

Результаты одинаковы для каждого звонка ...

enter image description here

Похоже, что WebResource.axd не может быть найден, возвращая HTTP 404, и именно это вызывает ошибки. Что меня смущает, так это то, что те же элементы управления Telerik прекрасно работают в старом веб-приложении на основе веб-форм. Я могу запустить его на своей локальной машине без проблем. Почему приложение Angular SPA не может использовать / найти WebResource.axd? Приложение Angular SPA просто предоставляет ссылку на URL веб-форм (т.е. http://localhost:4200/api/oldwebform.aspx).

Может ли быть так, что HttpHandler не был настроен должным образом для использования WebResource.axd в веб-приложении API? Может ли маршрутизация играть роль в этом, так как Angular не распознает маршрут к старой веб-форме? Я бы подумал, что Angular даже не сыграет роли, поскольку я просто вызываю URL-адрес веб-формы ASP.NET в браузере.

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