[英]my graphql resolver with aws s3 functions returning h18 error on heroku?
我的代碼是這樣的:
try {
s3.putObject(params);
await admin.auth().updateUser(contextUser.uid, {
photoURL: awsPhotoURL,
});
if (contextUser.picture) s3.deleteObject(deleteParams);
return {
message: 'Success',
success: true,
file,
fileName,
};
} catch (error) {
console.log('error: ', error);
return {
message: error.message,
success: false,
file: null,
fileName: null,
};
}
基本上我在本地主機上沒有收到錯誤,上傳操作按預期工作,但是一旦它已經投入生產,我就會收到 h18 錯誤。 我試圖將 await 放在這樣的 s3 操作上:
await s3.putObject(params);
但我會收到警告,例如:
'await' 對這個表達式的類型沒有影響。
我的代碼有什么問題?
要將 promises/await 與aws-sdk
一起使用,您需要使用 promisified 版本:
s3.putObject(params).promise()
然后await
應該按預期工作。
在此處查看有關承諾的文檔(實際上有一個 S3.putObject() 示例)
我不確定這會解決您的實際問題,但這是一個開始。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.