2016-09-23 7 views
0

Я строю угловую 2 веб-приложение, которое обменивается данными с webapis, чтобы получить данные, приложение будет размещен на IIS с проверкой подлинности Windows, и у меня есть несколько вопросов:Угловое 2 в разработчика и производства с IIS и WebPack

  1. Должен ли я использовать system.config в качестве основных примеров работы с угловыми 2? Если да, то как насчет производства и как я могу работать с sass?
  2. Должен ли я использовать веб-пакет в качестве углового-cli? Если да, то как я могу сочетаться с преимуществами сервера Webpack Dev (Hot reloading, sass trans-pilers и т. Д.) и IIS с аутентификацией Windows?

Извините, если вопросы неактуальны, но я разработчик .NET и новый для Angular 2 и Webpack.

ответ

0

Я рекомендую Угловой кли с webpack. Он имеет встроенную перезагрузку модулей и имеет встроенные возможности разработки и производства с возможностью объединения и дрессировки.

+0

Thx @Alexander Ciesielski, но как я могу сделать проверку подлинности Windows, если я не развивается под зонтом IIS ?? –

+0

Я не знаю о разработке с помощью IIS, но если это означает аутентификацию по HTTP, то это должно быть возможно –

1

Вы можете использовать angular-cli для разработки углового приложения 2. Чтобы развернуть приложение для производства в IIS, вы можете использовать команду: ng-build --prod из командной строки angular-cli для создания приложения. Это создаст файлы, необходимые для развертывания в папке dest. Это всего лишь HTML, javascript, css и другие активы, которые использует ваше приложение. Вы можете скопировать содержимое папки dest и развернуть в папке вашего веб-приложения IIS.

Примечание: Угловая 2 маршрутизация (с хешем) будет работать без каких-либо проблем в IIS. Просто создайте правило перезаписи URL по умолчанию, которое перенаправит все запросы в файл index.html вашего углового приложения. Правило будет перенаправлять все запросы к index.html требуемых JS-файлы и фактических адреса Угловой приложении (например index.html или index.html #/{пути-значение} кроме

EX: < правил > имени < правила =». По умолчанию "> < соответствует url =" (. *) .js | index.html (. *) "Negate =" true "/ > < action type =" Rewrite "url ="/index.html "/ > </rule > </правила >

Угловая 2 маршрутизации (без хэша) не будет работать с IIS. В случае чистого HTML приложения IIS будет маршрутизация входящего запроса, и он будет повторно направьте запрос на страницу с ошибкой, если такая страница не существует в этом месте.

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

Ex Route для MVC приложения:

routes.MapRoute(
    name: "Angular", 
    url: "{*url}", 
    defaults: new { controller = "Home", action = "Index", id =  UrlParameter.Optional }, 
    constraints: new { url = new AppFeatureUrlConstraint() } 


public class AppFeatureUrlConstraint : IRouteConstraint 
    { 
    public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection) 
    { 
    if (values[parameterName] != null) 
    { 
     var url = values[parameterName].ToString(); 
     if (url.StartsWith("angular/", StringComparison.InvariantCultureIgnoreCase)) 
      return true; 
     else 
      return false; 
    } 
    return false; 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^