问题标签 [virtual-path]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
511 浏览

node.js - Express 虚拟路径前缀不适用于 Angular 6 应用程序

我正在使用 express static 托管我的 angular 6 应用程序

当我尝试将另一个页面作为登录页面添加到我的服务器时,问题就出现了。所以我为我的角度应用程序指定了一个安装路径'/app'。

这是行不通的!当我运行服务器时,这出来了

获取 /app/ 304 4.294 毫秒 - -

获取 /inline.bundle.js/ 404 1.065 毫秒 - 15

获取 /polyfills.bundle.js/ 404 0.581 毫秒 - 15

获取 /styles.bundle.js/ 404 2.195 毫秒 - 15

获取 /vendor.bundle.js/ 404 2.119 毫秒 - 15

获取 /main.bundle.js/ 404 1.830 毫秒 - 15

获取 /favicon.ico 404 0.474 毫秒 - 15

我解决了在虚拟路径“/home”中托管新网页的问题,并默认将我的 Angular 应用程序托管在根路径中。

但这些不是我需要的路线,有人知道如何在快速虚拟路径上安装角度应用程序吗?

0 投票
0 回答
84 浏览

asp.net - 脚本和样式在 ASP.NET MVC 中呈现

我正在尝试使用BundleConfig缩小一些文件,一切看起来都很好,问题是当我尝试使用@Styles.Render@Scripts.Render时,当我在 HTML 上使用这些渲染时,我得到一个错误循环和当然页面没有加载,我认为渲染找不到虚拟路径。

所以我的问题是,我还应该做什么,或者我在设置 HTML 以识别虚拟捆绑文件时缺少什么?


这是循环上的错误消息跟踪,无限循环:

引发的异常:mscorlib.dll 中的“System.ArgumentException”
引发的异常:System.dll 中的“System.Net.Sockets.SocketException”
引发的异常:System.dll 中的“System.IO.IOException”
引发的异常:“System.Net. System.dll 中的 WebException
引发的异常:System.dll 中的“System.Net.WebException”
引发的异常:System.dll 中的“System.Net.WebException” 引发的异常:System.dll 中
的“System.Net.WebException”
引发的异常:System.dll 中的“System.Net.WebException”
引发的异常:System.dll 中的“System.Net.WebException”
线程 0x3ee8 已退出,代码为 0 (0x0)。

这是我目前的设置:

捆绑配置

全球.asax.cs

base.cshtml

我也在我的 web.config 中尝试过这个,但我删除了它,因为它是一个多余的参考:

0 投票
1 回答
541 浏览

c# - asp.net-core - 使用中间件设置响应的虚拟路径

设置

  • ASP.NET-Core Web 应用程序托管在https://first-domain.com/
  • 使用负载平衡器将站点置于以下位置https://second-domain.com/some/path,以便请求将请求https://second-domain.com/some/path/Page1传递给https://first-domain.com/Page1
  • 转发请求时发送标头:
    • X-Original-Host = 'second-domain.com'
    • X-Original-BasePath = 'some/path'
    • X-Original-Url = 'https://second-domain.com/some/path/Page1'
  • 页面使用 ASP.NET 根路径字符 ( ~) 来引用相对于应用程序根的资源。
  • 使用ASP.NET-Core 中间件根据标头动态路由请求。

问题

我的中间件正确地将请求路由到页面。根据标头,请求https://second-domain.com/some/path/PageX正确检索https://first-domain.com/PageX.

但是,PageX使用 ASP.NET 根路径字符 ( ~) 的 URL 正在解析为,/因此客户端会尝试访问https://second-domain.com/不存在的资源。

例如,如果PageX.cshtml有一个<img src="~/myImage.png>标签,客户端的浏览器将尝试检索资源https://second-domain.com/myImage.png而不是https://second-domain.com/some/path/myImage.png

问题

有没有办法使用ASP.NET-Core 中间件来操作请求和/或响应,以便~动态解析ASP.NET 根路径 ( )?

换句话说,我正在尝试动态设置虚拟路径,而不使用通过 IIS/Azure 使用基础结构定义的虚拟路径。

0 投票
1 回答
283 浏览

javascript - 我无法使用 express 在节点 js 中创建虚拟路径前缀(文件系统中实际上不存在该路径)

我想在我的节点 js 文件中创建一个虚拟路径前缀(该路径实际上并不存在于文件系统中),但它不起作用。

未创建虚拟路径,未从 index.html 加载我的 css 和 js

这是我的文件夹的结构

我只使用 app.js 和我也已经安装 express 的静态文件夹。

在我的 app.js 中这样的代码

我想创建虚拟路径 '/public' 但不起作用,我的 'index.html' 无法加载我的 js 文件和 css 文件。这是我的 index.html 代码。

如果我更改app.use('/public', express.static(path.join(__dirname, 'static')));app.use('/static', express.static(path.join(__dirname, 'static')));它工作正常(我的 js 和 css 文件已加载)但我的虚拟路径未创建。

我哪里做错了?

谢谢