首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Http Post Angular 9参数

Http Post Angular 9参数
EN

Stack Overflow用户
提问于 2021-01-27 20:03:01
回答 2查看 29关注 0票数 0

我尝试在登录方法上发布我的电子邮件和密码,但每次在响应后都得到空的参数

使用curl,我发送了它,一切都正常了

代码语言:javascript
复制
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post))

where $post

代码语言:javascript
复制
array('email'=>'some@gmail.com', 'password'=>'somepass')

但是当我在angular上尝试post时,我什么也得不到

代码语言:javascript
复制
const params = new HttpParams();
params.set('email', 'some@gmail.com');
params.set('password', 'somepass');


this.http.post('https://myurl.com/login', '', {
   params: params
}).subscribe((data) => console.log(data))
EN

回答 2

Stack Overflow用户

发布于 2021-01-27 20:12:50

你应该像下面这样写代码-

代码语言:javascript
复制
const params = new HttpParams({ fromObject: { email: some@gmail.com, password: somepass, anotherParam: value}});

在您的情况下,以下操作也可能有效。

代码语言:javascript
复制
const params = new HttpParams()set('email', 'some@gmail.com').set('password', 'somepass');

您可以在如下所示的网络选项卡中看到请求标头

票数 0
EN

Stack Overflow用户

发布于 2021-01-27 22:40:31

解决了!

需要在表体中设置表头和参数

代码语言:javascript
复制
const body = new HttpParams()
      .set('email', user.email)
      .set('password', user.password);

    this.http.post('https://myurl.com/login',
      body.toString(),
      {
        headers: new HttpHeaders()
          .set('Content-Type', 'application/x-www-form-urlencoded')
      })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65918778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档