从Angular中的get / post获取节点服务器中的URLSearchParams为空

时间:2017-08-16 09:42:02

标签: node.js angular angular-http

我正在尝试使用Angular 4应用程序中的URLSearchParams向Express + Node服务器发出get / post请求,无论我做什么,我都无法获取服务器中的数据。

我正在做这样的事情

let params: URLSearchParams = new URLSearchParams();
params.set('company', company);
return this.authHttp
      .get(`${api}/${id}`, { search: params, params })

http.get的第二个参数是RequestOptionsArgs,它是

interface RequestOptionsArgs { 
  url?: string|null
  method?: string|RequestMethod|null
  search?: string|URLSearchParams|{[key: string]: any | any[]}|null
  params?: string|URLSearchParams|{[key: string]: any | any[]}|null
  headers?: Headers|null
  body?: any
  withCredentials?: boolean|null
  responseType?: ResponseContentType|null
}

所以这应该工作正常,但是当我尝试在服务器中获取req.query.company时,结果是req.query未定义。在req.params中,我可以找到我在网址中发送的ID,但也没有公司。

对我可能做错了什么的想法?

由于

1 个答案:

答案 0 :(得分:1)

编辑:使用简化版

更新了我的答案
let params: URLSearchParams = new URLSearchParams();
return this.authHttp
  .get(`${api}/${id}`, { params: { company: company } });