客户端相对寻址,并且在应用程序URL中不允许使用斜杠

问题描述 投票:0回答:1

我在ASP.NET Core 3.1中遇到了一个奇怪的问题,如果我通过以下方式访问我的应用程序,则我的ASP.NET 4应用程序中没有这个问题>

http://example.com/Application/

然后一切正常,但是如果我尝试转到

http://example.com/Application(不带斜杠)

然后客户端相对地址解析为http://example.com/Resource而不是http://example.com/Application/Resource

我在提到应用程序的根目录时遇到类似的问题。例如,/Resource似乎是相对于域而言,因此得出http://example.com/ResourceResource本身正确产生http://example.com/Application/Resource。但是,如何指代“根”本身呢?重定向到空字符串似乎可以刷新页面,而不是重定向到应用程序根目录。

我通过使用.并通过使用./Resource而不是Resource解决了这个问题。这似乎在几乎所有情况下都有效,除非访问应用程序时不带斜杠。

[访问​​http://example.com/Application时,AJAX调用格式为./Method?handler=name的定向URL导致请求http://example.com/Method?handler=name(缺少路径的Application部分)。

如何获得客户端相对地址,以始终引用正确的应用程序根地址?还是这是正常现象?

我在ASP.NET Core 3.1中遇到了一个我在ASP.NET 4应用程序中没有的奇怪问题,如果我通过http://example.com/Application/访问我的应用程序,那么一切正常,但是如果我...

javascript ajax asp.net-core asp.net-core-3.1
1个回答
0
投票

尝试一下:

© www.soinside.com 2019 - 2024. All rights reserved.