Nitro/h3のserver apiでは、何もreturnしないと何故か404エラーになってしまう。
非同期処理などで、クライアント側にサーバー側の処理を待ってもらう書き方はこちら。
export default defineEventHandler(async (event) => {
return await new Promise((resolve, reject) => {
try {
時間のかかる処理()
resolve({success:true})
} catch(e) {
reject({success:false})
}
})
})
Promise()で包んであげた処理をreturnすれば、非同期な処理が終わってresolve()するまで待ってくれる。Promiseの中でreturnしてもだめ。