Nano Hash - криптовалюты, майнинг, программирование

Проблема Scriptmanager из-за правила перезаписи в web.config для angularjs

У меня есть приложение angulajs, которое реализует маршрутизацию как

.config(function ($routeProvider, $locationProvider) {
            $routeProvider
                .when("/home", {
                    templateUrl: "home.html",
                    controller: "homeController"
                })
                .when("/filter", {
                    templateUrl: "filter.html",
                    controller: "filterController"
                })

и у меня есть правило перезаписи в asp.net web.config следующим образом, как предлагается здесь - ТАК

<rewrite>
  <rules>
    <rule name="AngularJS" stopProcessing="true">
      <match url=".*" />
      <conditions logicalGrouping="MatchAll">
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
      </conditions>
      <action type="Rewrite" url="/webmasterpage.html" />
    </rule>
  </rules>
</rewrite>

чтобы маршрутизация работала в приложении asp, но из-за правила перезаписи, с которым я сталкиваюсь

Непредвиденная ошибка токена ‹ в WebResource.axd и ScriptResource.axd

а также

Не удалось загрузить клиентскую платформу ASP.NET Ajax для asp:scriptmanager

если я закомментирую правило перезаписи в файле web.config, эта ошибка исчезнет, ​​но маршрутизация angularjs не будет работать! Каким образом мы могли бы написать правило перезаписи, чтобы оба (asp scriptmanager и маршрутизация angularjs) работали нормально. любая помощь приветствуется


Ответы:


1

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

 <rewrite>
  <rules>
    <rule name="AngularJS" stopProcessing="true">
      <match url=".*" />
      <conditions logicalGrouping="MatchAll">
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.html$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.js$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.css$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.aspx$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.axd$" negate="true" />
      </conditions>
      <action type="Rewrite" url="/webmasterpage.html" />
    </rule>
  </rules>
</rewrite>

вы можете отметить здесь

        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.html$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.js$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.css$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.aspx$" negate="true" />
        <add input="{REQUEST_FILENAME}" pattern="(.*?)\.axd$" negate="true" />

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

25.07.2018
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..