MDB
MDB

Reputation: 341

angular2: http post not executing

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?

Upvotes: 9

Views: 4160

Answers (1)

Thierry Templier
Thierry Templier

Reputation: 202176

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

Upvotes: 31

Related Questions