【问题标题】:How to pass access token in Angular Js Post method如何在Angular Js Post方法中传递访问令牌
【发布时间】:2017-06-03 19:40:24
【问题描述】:

我正在尝试使用电子邮件 ID 和角色创建用户角色,在标题中我传递内容类型和授权,当我提交表单时,我收到 XMLHttpRequest 无法加载错误。如何在 angualr js 中传递授权令牌。

var Access_Token = L5uCp_JwSa9Fk7_ShrqPWi1FPdT_.......

$http({ 
url: "http://localhost:54581/api/Account/AddRole?username=" + email +  "&Role=User",
 method: "POST",
 headers: {
 'Content-Type': 'application/x-www-form-urlencoded',
                        'Authorization': 'bearer ' + Access_Token
                    }

                }).
                then(function (response) {
                    alert("Success")
                })

【问题讨论】:

  • 尝试在请求中添加数据字段

标签: jquery angularjs asp.net-web-api http-headers


【解决方案1】:

如果您使用 POST 方法,则不能直接将参数附加到 url。您需要先使用 Angular 内置的 httpParamSerializer 对其进行序列化,然后将其发送到数据中。

var myData = {username : email,Role : "user"}
$http({
    url: http://localhost:54581/api/Account/AddRole,
    method: 'POST',
    data: $httpParamSerializerJQLike(myData),
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded',
      'Authorization': 'bearer ' + Access_Token
    }
  });

【讨论】:

  • 我仍然收到错误 XMLHttpRequest 无法加载 localhost:54581/api/Account/…。预检响应包含无效的 HTTP 状态代码 405
  • 您之前遇到的错误是什么?
  • 那么您的后端 API 可能存在问题。你在后台用什么?
  • 如果我在邮递员中传递相同的 url 和访问令牌,它的工作正常
猜你喜欢
  • 2013-06-24
  • 1970-01-01
  • 1970-01-01
  • 2017-04-09
  • 2019-08-04
  • 2019-12-04
  • 1970-01-01
  • 2018-01-20
  • 2019-10-20
相关资源
最近更新 更多