Angular Http POST request resulting in 500 error

I’m trying to make a post request to my webserver but only getting an internal server error. I’ve tested sending a post request to the server through a REST client, which works fine. What am I missing?

postCity(city: ICity, country: string): Observable<ICountry> {
    return this.http.post<ICountry>(this.url, city, {
      headers: new HttpHeaders({
          'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8'
      })
    });
 }