使用簡單的 API。設法讓 GET & DELETE 請求正常作業,但我對 POST 請求有一些問題。很確定這是一個新手錯誤,但我錯過了這里的邏輯。
這是定義所有路由的檔案。
import express from 'express';
import fs from 'fs';
const router = express.Router();
'use strict';
let rawdata = fs.readFileSync('api/resources/vehicles.json');
let vehicles = JSON.parse(rawdata);
let vehiclesArray = vehicles.vehicles;
let data = JSON.stringify(vehicles);
fs.writeFileSync('api/resources/vehicles.json', data);
router.get('/', (req, res, next) => {
res.status(200).json(vehiclesArray);
});
router.get('/:id', (req, res, next) => {
let id = req.params.id;
res.status(200).send(vehiclesArray[(id-1)]);
});
router.delete('/:id', (req, res, next) => {
let id = req.params.id;
const removedVehicle = vehiclesArray.splice(id, 1);
res.status(200).json({
message: `Vechicle ${removedVehicle} with id ${id} was removed`
});
});
router.post('/', (req, res, next) => {
let id = vehiclesArray.length 1;
const vehicle = {
"id" : id,
"type" : req.params.type,
"brand" : req.params.brand,
"model" : req.params.model,
"production_year" : req.params.production_year,
"kilometers_driven" : req.params.kilometers_driven,
"price" : req.params.price
};
res.status(201).send({
message: `POSTed new vehicle: ${vehicle}`,
vehicle: vehicle
});
res.status(201).send(vehiclesArray.push(vehicle));
});
export default router;
在我的 POST 方法中,我定義了車輛,但是一旦我嘗試發送它,我就會在 Postman 中得到以下資訊,即確認添加的物件和物件,但僅使用 id 屬性

有人可以給我一個提示,也許我做錯了什么?我還需要類宣告嗎?謝謝!
uj5u.com熱心網友回復:
查看
GET 下面,只是為了檢查是否確實添加了物件:

Also helpful in my endeavor: https://www.npmjs.com/package/body-parser
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/446388.html
標籤:javascript 节点.js json 邮差
