HTTP POST bez tela v Angular


Zaujímalo by ma, ako odoslať HTTP POST požiadavku bez tela (konkrétne v Angular). Toto robím teraz, ale dostávam chybu Očakávané 2-3 argumenty, ale získaný 1).

Uvedomujem si, že druhý argument je pre telo, ale neposielam to na server (áno, chápem, že volanie POST mení stav systému a pozrel som sa na TÚTO otázku).

postRequest(id) {
  this.http.post('/api?data=' + id).map(
    (response) => {
      return response;
    }
  )
}

Odpoveď č. 1

Vyzerá to, že toto je vhodná odpoveď:

postRequest(id) {
  this.http.post('/api?data=' + id, null).map(
    (response) => {
      return response;
    }
  )
}

Odpoveď č. 2

Ak null nefunguje (chyba 4XX na strane klienta), skúste s {} JSON:

postRequest(id) {
    this.http.post('/api?data=' + id, {}).map((response) => {return response;});
}

Súvisiace články