AngularJs $http 变形请求 url

AngularJs $http deforms request url

我是 AngularJS 的新手,但出于某种原因我必须使用它并创建小的 web-page,以便能够向我的 Web Api 发送一些请求2 部分。我遇到了一个奇怪的错误。我的控制器在 ApplicationFrontEnd/MainView 文件夹中,文件名为 "main.js"。代码的问题部分:

    var request = {
        method: 'POST',
        url: 'api/login',
        headers: {
            'Authorization': 'Basic ' + encoded
        }
    }
    $http(request)
       .success(function (data, status, headers, config) {
          // I`m supposed to have no problem
       })
       .error(function (data, status, headers, config) {
           //but for some reason i do have.
       });

因此,在发送 post 时,请求不是发送到 'api/login',而是发送到 'ApplicationFrontEnd/api/login',并且没有任何授权 header。 在项目的 Web Api 部分我打开了 CORS 等,但是当我在请求中有错误的 url 时,我收到 404 错误(非常合乎逻辑)。有人可以向我解释一下我做错了什么以及如何解决吗?

通过添加前导 /

使 url 绝对化
url: '/api/login'

将致电 http://yourDomain.com/api/login