Estoy llamando a una API. En la sección entonces de la llamada a la API, estoy llamando a otra API. la salida de la primera API se pasará a otra API.
await axios .post(process.env + '/certificates/upload', { "name": "Shruti" } }) .then((response: any) => { filenames = JSON.stringify(response.data.office); axios // Not able to write async here .patch(process.env + "/certificates/", { file: filenames }) .then(function(response: any) { alert(' Record updated successfully'); }) .catch((err: any) => { alert('Error in updating the record'); });
No puedo usar await
en la segunda llamada a la API. ¿Dónde debo poner async
para usar await
en la segunda llamada API? la primera llamada funciona correctamente. también ¿Hay alguna manera mejor de llamar a la API consecutiva y pasar la salida de la primera llamada a la segunda?
Encuentre la función que contiene la instrucción que desea await
. Agregue async
al comienzo de esa función.
De manera más general, evite mezclar async
/ await
con encadenado .then
/ .catch
.
Creo que esto es lo que quieres:
try { let response1 = await axios.post( process.env + '/certificates/upload', { name: "Shruti" } ) let filenames = JSON.stringify(response1.data.office) await axios.patch( process.env + "/certificates/", { file: filenames } ) alert(`Update succeeded`) } catch( error ) { alert(`Update failed`) }