加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angular – 使用x-www-form-urlencoded的HttpClient POST请求

发布时间:2020-12-17 08:02:31 所属栏目:安全 来源:网络整理
导读:我正在尝试使用x-www-form-urlencodedcontent类型标头发出POST请求,如下所示: login(username,password): Observableany { return this.http.post('/login',{ username: username,password: password },{ headers: new HttpHeaders() .set('Content-Type',
我正在尝试使用x-www-form-urlencodedcontent类型标头发出POST请求,如下所示:
login(username,password): Observable<any> {
    return this.http.post('/login',{
      username: username,password: password
      },{
        headers: new HttpHeaders()
          .set('Content-Type','x-www-form-urlencoded')
      }
      );

不幸的是我的API说我发送了空的用户名和密码。

所以我决定向我的登录端点发一个邮递员请求,看看问题来自哪里,邮递员请求确实返回了用户名和密码。

为什么当我从邮递员发帖时我的API返回我的用户名和密码,当我从我的Angular应用程序发布时,我的API返回空值?有什么我想念的吗?

您将JSON数据发布到API而不是表单数据。
下面的代码段应该可行。
login(username,password): Observable<any> {
  const body = new HttpParams()
    .set('username',username)
    .set('password',password);

  return this.http.post('/login',body.toString(),{
      headers: new HttpHeaders()
        .set('Content-Type','application/x-www-form-urlencoded')
    }
  );
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读