在Firebase云函数中,错误通常是由请求格式或未正确处理请求导致的。此外,确保您的函数已正确部署并正在运行。以下是一个示例云函数来处理Axios请求:
const functions = require('firebase-functions');
const axios = require('axios');
exports.handleAxiosRequest = functions.https.onCall(async (data, context) => {
try {
const response = await axios.get(data.url);
return response.data;
} catch(error) {
console.error(error);
return {error: error.message};
}
});
这个示例云函数可以通过以下方式被调用:
const handleAxiosRequest = firebase.functions().httpsCallable('handleAxiosRequest');
handleAxiosRequest({ url: 'https://jsonplaceholder.typicode.com/todos/1' })
.then(response => console.log(response.data))
.catch(error => console.error(error));
注意到我们使用了Firebase函数的 https.onCall 方法,并将 Axios 作为依赖项引入。在函数中,我们尝试进行 Axios 请求,如果出现错误,我们只是将错误捕获并返回一个包含错误消息的对象。如果请求成功,则返回响应数据。在 client-side 代码,我们使用 Firebase 函数的 httpsCallable 方法来调用云函数。