Necesito ayuda para reemplazar fetch con axios aquí
export const fetchSecret = async (secretName) => { const token = await getFunctionAppToken(); const headers = { Authorization: `Bearer ${token}`, }; const url = `${blbl.GetSecretFromVault}?secretName=${secretName}`; return Promise.all([fetch(url, { method: "get", headers })]) .then(([response]) => { const res = response.text(); return res; }) .catch((error) => { return Promise.reject(error); }); };Estoy atascado en la línea de const res = response.text() para axios.
return Promise.all([axios.get(url, { headers })]) .then(([response]) => { const res = ?????????? return res;Axios analiza automáticamente el flujo del cuerpo de la respuesta como data ; consulte el esquema de respuesta .
También puede informar a Axios que espere una respuesta de texto a través de la opción responseType .
Finalmente, siempre prefiero usar la opción params para pasar parámetros de consulta, ya que garantiza una codificación de URL adecuada.
export const fetchSecret = async (secretName) => (await axios.get(blbl.GetSecretFromVault, { headers: { Authorization: `Bearer ${await getFunctionAppToken()}` }, params: { secretName }, responseType: "text" })).data No sé por qué estabas usando Promise.all() , así que lo omití.
Su .catch() también era redundante, por lo que tampoco está incluido.
El (await axios.get(...)).data es solo una versión más corta de
const response = await axios.get(...) return response.data o sin await ...
return axios.get(...).then(response => response.data)