想通过云函数访问自己的服务器获取文件,并上传到云存储。
本地调试没问题,可以从服务器上获取文件并成功上传到云存储。
可是部署到云端后,云开发工具测试和小程序真机测试,都无法实现上传文件。(本地和云端代码完全一致)
由于无法云端调试,所以不清楚是获取到文件数据后,写入临时文件的问题还是上传到云存储时出了问题。
以下是云函数问题代码:
exports.main = async(event, context) => {
const fileName = 'hanziResult.xlsx'
await rp(encodeURI("https://test.haijie001.top/createHanzi?paperType=01&hanziContent=测试数据")).pipe(fs.createWriteStream(fileName)).on('close', function() {
const fileStream = fs.createReadStream(fileName)
cloud.uploadFile({
cloudPath: "hanziResult.xlsx",
fileContent: fileStream,
})
});
return "finish";
}
网友回复
吃包子不吐包子皮:
异步函数都等待 await 一下, 看是否ok