如何允许我的应用程序在firebase中发布一个cloudfunction,从而进行另一次POST



我正在尝试一个使用firebase函数的react应用程序,这里是我的代码:

handleDonate(key){
const url = 'https://us-central1-bora-ajudar-73ebc.cloudfunctions.net/api/donate'
const dados = {teste : 'oi'} 
const options = {
method: 'POST',
headers: {'Access-Control-Allow-Origin' : '*'},
data : dados,
url
}
axios(options)
.then(data=>{
console.log(data)
})
.catch(err =>{
console.log(err)
})
}

然后,我的index.js函数

app.use(cors({origin: true}));
admin.initializeApp()
const checkoutUrl = 'https://pagseguro.uol.com.br/v2/checkout/payment.html?code='
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({extended:true}))
app.get('/api', (req,res)=>{
res.send('Server side')
})
app.post('/donate',(req,res)=>{
request({
uri: 'https://ws.pagseguro.uol.com.br/v2/checkout?',
method: 'POST',
form:{
token: token,
email: email,
currency: 'BRL',
itemId1: 'idCampanha',
itemDescription1: 'Doação',
itemQuantity1: '1',
itemAmount1: '2.00'
},
headers:{
'Content-Type': 'application/x-www-urlencode; charset=UTF8',
'Access-Control-Allow-Origin': 'true'
}
})
.then(data=>{
parse(data, (err,json)=>{
res.setHeader('Access-Control-Allow-Origin', 'true')
res.send({
url: checkoutUrl+json.checkout.code[0]
})
})
})

})

当我运行它时,控制台显示这个错误:

加载失败https://us-central1-bora-ajudar-73ebc.cloudfunctions.net/api/donate:请求的资源上不存在"Access Control Allow Origin"标头。原点'https://bora-ajudar-73ebc.firebaseapp.com因此不允许访问。响应的HTTP状态代码为500。

我知道这是关于将POST发送到我的函数和我的函数发送另一个POST的问题,但我不知道具体是什么。

问题是firebase不允许在免费计划中使用外部API请求。

最新更新