[英]Unexpected end of input on parameter.json()
我正在學習服務器和API ,我不太了解如何通過請求接收和發送數據。 所以我使用Mongoose和Express.js獲得了帶有Node.js 的服務器:
server.get('/api/items', async (req, res)=>{
let results = await TvModel.find({model: 4013});
res.json(results);
});
因此,如果我通過郵遞員發送獲取請求,我會得到:
[
{
"_id": "60f62a33a1dbf8031088cd3b",
"name": "Sony",
"model": "4013",
"size": 8,
"idSerial": 1,
"__v": 0
}
]
因此,嘗試使用 fetch api 通過 JavaScript 獲取數據:
fetch(API_URL, {mode: 'no-cors'})
.then((resolve) => {resolve.json()})
執行此代碼時,我在控制台上收到錯誤消息:
Uncaught (in promise) SyntaxError: Unexpected end of input
我看不到的 SyntaxError 是什么?
我通過執行以下操作自己解決了這個問題:
感謝@Bravo的回答,我能夠了解我的錯誤是什么:
“您是否由於CORS錯誤添加了該標頭,可能認為這會繞過CORS? ”
由於我在我的服務器上使用express.js
,我必須為我的服務器安裝一個中間件,一個名為"cors"的 npm 模塊。
所以我唯一需要添加的是這行代碼:
const cors = require('cors');
app = express();
app.use(cors());
無論如何,您可以在官方 express.js 網站上的 cors官方文檔中閱讀更多內容
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.