ASP.NET 带有 Web API 的 MVC 5 中的移动浏览器出现“404 错误 - 找不到文件或目录”错误

"404 error - File or Directory not found" error on mobile browser in ASP.NET MVC 5 with Web API

我正在 ASP.NET MVC 5 中尝试基于令牌的身份验证。一切都在 PC 浏览器上运行(登录页面、注册页面、数据页面)。

这是登录脚本代码

<script type="text/javascript">
$(document).ready(function () {
    $('#btnSignIn').click(function () {
        var loginData = {
            grant_type: 'password',
            username: $('#txtSignInEmail').val(),
            password: $('#txtSignInPassword').val()
        };

        $.ajax({
            type: 'POST',
            url: 'Token',
            data: loginData
        }).done(function (data) {

            $('#user').text(data.userName)
            $('#UserName').text(JSON.stringify(data.userName));

            localStorage.setItem('accessToken', data.access_token);
            localStorage.setItem('qubaUserName', JSON.stringify(data.userName));
        }).fail(function (showError) {
            $('#signInError').text(JSON.stringify(showError));
        });
    });
})
</script>

当我尝试在我的 PC 上登录时,它成功登录了。

但是在我的手机上,它显示了一个错误,如屏幕截图所示。

更新

它仅适用于移动 Chrome 浏览器。我检查了 Mozilla,它完全符合我的预期

更新

If I make the url:'Token', It works on local machine and Mozilla browser in Android, but not in any other PC(both chrome and Mozilla) and Android(chrome browser)

当 URL: 'Token'

它从本地 pc 向此 link http://localhost/ProjectName/Token

发出请求

但它会从其他电脑浏览器和 Android Chrome 浏览器发出请求,例如 http://localhost/Token

If I change the URL:'ProjectName/Token' not working in local pc(Where I deployed on IIS), But, it working in all Android browser(chrome and Mozilla) and other pc

当 URL: 'ProjectName/Token'

it makes a request from local pc to this link http://localhost/ProjectName/ProjectName/Token

但它会从其他电脑浏览器和 Android Chrome 浏览器发出请求,例如 http://localhost/ProjectName/Token

那么如何为所有客户端(本地 pc 和远程客户端)创建通用 URL

$.ajax({ 类型:'POST', url: 'Token',

将此 url 标记更改为 /token 或完全限定路径

将url改为绝对的/开头

"/ProjectName/Token"

无论url你的js脚本是从什么地方调用的,肯定会指向http://localhost/ProjectName/Token