【发布时间】:2025-12-05 22:30:01
【问题描述】:
我在这里描述了同样的问题: Javascript in Virtual Directory unaware of Virtual Directory
但是使用隐藏字段或服务器端生成的 json 设置对象的建议解决方案对我不起作用,因为服务器端实际上并不知道它自己的 url。如果我执行 Url.Content("~") 我只会获得运行代码的其中一台机器的 ip,因此我永远无法在 javascript 中使用该路径。它还返回一个 http url 而不是外部的 https url。
所以更准确地说: https://myhost.com/myapp/ /* 这是我的代码运行的地方 */
我可以在 jquery 中使用相对路径(例如:$.get('api/controller')),但如果用户使用 'https://myhost.com/myapp'(所以没有尾部斜杠),应用程序将无法工作。 (实际上页面已加载,但由于缺少斜杠而导致回调失败)
我可以使用绝对网址,但服务器端代码不知道实际网址...
有没有办法让 javascript 返回带有斜杠的虚拟目录的完整绝对路径(即使浏览器地址中没有斜杠)?
谢谢
【问题讨论】:
标签: jquery asp.net-mvc asp.net-web-api