我正在使用快速服務器實作 SPA。
服務器正在以下列方式為所有“獲取”請求發送 index.html 檔案。
app.get("/*", (req, res) => {
res.sendFile(path.resolve(__dirname, "/public", "index.html"));
});
順便說一句,我應該如何處理下面的get api請求?我無法收到請求,因為 '/*'
app.get("/:id", (req, res) => {
console.log(req);
});
我認為順序很重要,所以即使我將兩者更改并發送請求也是一樣的。有解決辦法嗎?
uj5u.com熱心網友回復:
分布式架構
遵循保持簡單并進行更干凈的部署,我建議您將 spa 和 api 放在不同的主機、域、git 存盤庫等
在實際場景中,您的 spa 將使用多個 API,因此在其中一個 API 中托管 spa 并不是最佳選擇
檢查這個以獲得更詳細的答案
- https://stackoverflow.com/a/71791940/3957754
spa api = 單體
無論如何,如果您需要在 api 中托管 spa,則需要在靜態路由之前注冊 api 路由:
app.get("/:id", (req, res) => {
console.log(req);
});
app.get("/*", (req, res) => {
res.sendFile(path.resolve(__dirname, "/public", "index.html"));
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/462330.html
標籤:javascript 表示 axios 单页应用
