我在 Node 中使用 express 路由器,我正在嘗試使用從 API 獲取的一些資料來呈現頁面。但是,我絕對沒有得到任何結果,這不是 API 錯誤。我手動檢查了控制臺,它按預期回傳了結果。
這是我的代碼:
router.get('/dashboard', ensureAuth, async (req, res) => {
try {
const resp = await fetch("https://api.tvmaze.com/shows?page=1")
const respData = await resp.json()
res.render('dashboard', {
name: req.user.firstName,
image: req.user.image,
shows: respData
})
} catch (error) {
res.render('dashboard', {
name: req.user.firstName,
image: req.user.image
})
}
})
編輯:這是正在呈現的視圖:
<body>
{{#if shows}}
{{#each shows}}
<img src="{{image.original}}" alt="{{name}}" />
<div class="movie-info">
<h3>{{name}}</h3>
<span>{{weight}}</span>
</div>
{{/each}}
{{else}}
<p>No shows available.</p>
{{/if}}
</body>
我在網上搜索過,但找不到問題所在的解釋。如果這是重復的,請將我重定向到原始檔案。謝謝。
uj5u.com熱心網友回復:
您不能使用fetch
內部節點,因為它僅在瀏覽器中可用。如果您想從節點應用程式發出 HTTP 請求,請使用axios
或node-fetch
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/374089.html
標籤:javascript 节点.js 表达 拿来 路由器