Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

angular2: http post not executing

Tags:

angular

This is my first experience with angular 2. I have created a simple form and try to submit it but when http.post is executed nothing happens. There is no request made in the network tab, there is not errors.

Here is my code:

 save(model) {
        var uri = this._baseUri + "/api/contact/AddContact";

        let md = JSON.stringify(model);

        this.http.post(uri,
            JSON.stringify(md),
            {
                headers: new Headers({
                    'Content-Type': 'application/json'
                })
            })
           .map(res => res.json());


    }

I have set a breakpoint on save method and is going through there but as I said nothing happens. What am I missing?

like image 697
MDB Avatar asked Jan 22 '16 14:01

MDB


1 Answers

Observables are lazy so you need to subscribe on them to make the request execute even if you don't want to handle the response.

Something like that:

save(model) {
  var uri = this._baseUri + "/api/contact/AddContact";
  let md = JSON.stringify(model);

  this.http.post(uri,
    JSON.stringify(md),
    {
      headers: new Headers({
        'Content-Type': 'application/json'
      })
    })
    .map(res => res.json()).subscribe();
  }

Hope it helps you, Thierry

like image 129
Thierry Templier Avatar answered Oct 22 '22 02:10

Thierry Templier