Estoy tratando de hacer una llamada api pasando una matriz de id.
en mi página.ts:
this.myService.getPassingID(['1', '2']) .subscribe((val) => console.log("val", val))en mi servicio:
getPassingID(id): Observable<any>{ let params = new HttpParams() .set("id", id) let url = apiURL return this.http.get(url, {params}); }Lo he intentado de esta manera pero recibo el error 500. ¿Cómo puedo pasar una matriz en una llamada api?
Puedes pasarlo de dos maneras.
#1 Ordena la matriz mientras la pasas a parámetros y luego la envías a la llamada HTTP
let params = new HttpParams().set("id", JSON.stringify(id)); Esto necesita que analice el parámetro respectivo en su back-end de API de recepción.
JSON.parse(params.id) y usarlo más.
#2 Agregue todos los elementos de la matriz como valores separados por comas (,) en el parámetro id .
let params = new HttpParams(); params = params.append('id', id.join(','));Se puede acceder a esto y dividirlo en coma (,) en el backend.
let idArray = params.id.split(',');y usarlo más.