Valor devuelto en un request.body [Object: null prototype] { ‘{“user_id”:10}’: ” }

Hola y muy buenos días,

Estoy trabajando en la parte front-end en angular para una pagina web. tras logearse con un usuario tengo en un json el ID del usuario logeado asi que:

1) He creado un modelo en models/user.ts

export class User {     user_id: string; } 

2) La función del componente components/myNovels.ts

const user = new User();   user.user_id = (Este digito lo obtiene correctmanete de un JWT decodificado por ejemplo id: 10)    this._ns.getUserNovelData(jwt, user).subscribe((data: any) => {     this.usuario_novela = data.novelas;     console.log(this.usuario_novela);   }); 

3) Mi funcion en el servicio que hace la consulta a la BBDD: services/app.service.ts

 getUserNovelData(jwt: string, user: User): Observable<any> {      const httpOptions = {       headers: new HttpHeaders({         'Content-Type':  'application/x-www-form-urlencoded',         'Authorization': jwt       })     };      const url = `$  { this.urlnovelsdb }/api/novelas-usuario`;     return this.http.post(url, user, httpOptions);   } 

4) Finalmente mi back-end tiene:

function getUserNovel(req, res) {     var id = req.body;     console.log(id);  // devuelve [Object: null prototype] { '{"user_id":10}': '' }     novelas.sequelize.query('Aqui va una mega ultra Select').then(novelas => {         res.status(200).send({ novelas })     }).catch(err => {         res.status(500).send({ message: 'Ocurrio un erro al buscar la novela' })     }); } 

Mi problema es precisamente que no tengo ni idea de por que mi var id = req.body; esta recibiendo un [Object: null prototype] { '{"user_id":10}': '' }

No tengo ni idea de como recibir apropiadamente lo que esta mandando mi front-end al back-end para que lea el id: 10

Apreciare muchisimo su ayuda

Gracias!