asp.net - 如何让 webpack 和 iis express 协同工作?

标签 asp.net node.js iis angular webpack

我有 Angular 2 and Webpack 2 starter 它由 webpack-dev-server 在 Node 上运行,我用 web-api 从 Visual Studio 运行它。

问题是当 angular2-webpack-starter 在端口 3000 上运行 webpack-dev-server 时。而 IIS Express 在不同的端口 5000 上运行。

这对我来说非常重要,因为我想使用 HMR 并在每次更改文件时重新加载。

那么,如何将它们组合在一起?在同一个端口上运行?或任何其他解决方案?

最佳答案

我找到了! - 与现有服务器结合 总结和例子:

您可能希望在开发中运行后端服务器或模拟它。你不应该使用 webpack-dev-server 作为后端。它的唯一目的是提供静态(webpacked) Assets 。

您可以并排运行两个服务器:webpack-dev-server 和您的后端服务器。

在这种情况下,您需要教导 webpack 生成的 Assets 向 webpack-dev-server 发出请求,即使在后端服务器发送的 HTML 页面上运行时也是如此。另一方面,您需要教您的后端服务器生成 HTML 页面,其中包含指向 webpack-dev-server 上 Assets 的脚本标签。除此之外,您还需要在 webpack-dev-server 和 webpack-dev-server 运行时之间建立连接,以在重新编译时触发重新加载。

要教 webpack 向 webpack-dev-server 发出请求(用于 block 加载或 HMR),您需要在 output.publicPath 选项中提供完整的 URL。

要在 webpack-dev-server 和它的运行时之间建立最佳连接,请使用带有 --inline 的内联模式。 webpack-dev-server CLI 自动包含一个建立 WebSocket 连接的入口点。 (如果您将 webpack-dev-server 的 --content-base 指向后端服务器,您也可以使用 iframe 模式。如果您需要与后端服务器建立 websocket 连接,则必须使用 iframe 模式。

当您使用内联模式时,只需在 Web 浏览器中打开后端服务器 URL。 (如果您使用 iframe 模式,请打开 webpack-dev-server 的/webpack-dev-server/前缀 URL。)

https://webpack.github.io/docs/webpack-dev-server.html#combining-with-an-existing-server

关于asp.net - 如何让 webpack 和 iis express 协同工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40318684/

相关文章:

iis - dotnet 发布错误 : The process cannot access the file because it is being used by another process

windows - IIS 10 : Windows 10 vs Windows Server 2016, 连接数

javascript - node.js 日志模块 bunyan 更改时区

asp.net - Server 2008 RC2、IIS 7.5、ASP.NET 和请求排队性能不佳

jquery - Autosuggest tag-it jquery - 如何在回发时获取 ID 和标题?

asp.net - 移动设备浏览器文件与 ASP.NET 的 WURFL

node.js - Redis、Node.JS 和唯一 ID

node.js - 集中式 node_modules

asp.net - IIS 服务器中的 Angular 路由

c# - ASP.NET可视化图表\流程图控件