繁体   English   中英

如何使用http在angular2中发出put请求?

[英]How to make a put request in angular2 using http?

我正在研究这个angular2应用程序,我正在进行CRUD操作。

我有http用于getpost请求。

我想现在执行put操作但找不到任何相关的东西。

有什么投入?

谢谢。

如果您已经熟悉POST ,那么

POST和PUT请求之间的区别仅仅是UT而不是OST ,它只是一个verb ,对于前端至少。

Angular Docs(必须让它变得复杂)

// Update existing Hero
private put(hero: Hero) {
  let headers = new Headers();
  headers.append('Content-Type', 'application/json');

  let url = `${this.heroesUrl}/${hero.id}`;

  return this.http
             .put(url, JSON.stringify(hero), {headers: headers})
             .map(res => res.json());
}

并且记住 - Observables可以是懒惰的(例如:Angular的Http请求),因此即使您不想处理响应,也需要订阅它们以使请求执行。 - @ user2171669

    //For .map(res => res.json()); 
    //solution is below.. 
       private updateProduct(product: IProduct, options: RequestOptions):     Observable  {
       const url = `${this.baseUrl}/${product.id}`;
        let headers = new Headers();
        headers.append('Content-Type', 'application/json')
        return this._http.put(url, JSON.stringify(product), {headers: headers})
               .map(() => product)
               .do(data => console.log('updateProduct: ' + JSON.parse(JSON.stringify(data || null)) ))   
            .catch(this.handleError);
       } 
    //But I am unable to update any record....

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM