邮递员的简单删除请求不起作用

     2023-03-11     154

关键词:

【中文标题】邮递员的简单删除请求不起作用【英文标题】:Simple delete request with Postman not working 【发布时间】:2021-12-04 10:51:40 【问题描述】:

使用 node.js、express、mongo db 和 mongoose 创建一个简单的电话簿应用程序。

Get 和 Post 请求工作正常,Post 请求存储在 Mongo 数据库中。

邮递员上的删除请求不起作用,但是在邮递员上获得 404 not found 状态。

我认为我没有引用要正确删除的条目的 ID。

当我从我的数据库中复制我的一个条目时,这些就是详细信息。

"_id":"$oid":"6169f8bc950d87ffe2f6f033","name":"nick","number":"087-26387784","__v":"$numberInt":"0"

也尝试使用 findOneAndDelete(_id: req.params.id) 但这也没有用。

任何帮助表示赞赏

const express = require('express');

const router = express.Router();

const Entry = require('../models/entry');



router.get('/api/entries', (req, res, next) => 

    Entry.find().then(entries => 

      res.json(entries)

      console.log(entries)

    )

  ) 

// add now entry to db

router.post('/api/entries', function(req, res, next)

    Entry.create(req.body).then(function(entry)

        res.send(entry);

    ).catch(next);

);



router.delete('api/entries/:id', function(req, res, next)

    Entry.findByIdAndRemove(_id: req.params.id).then(function(entry)).res.send(entry);

    );

module.exports = router;




const express = require('express');
const mongoose = require('mongoose');

const password = process.argv[2]

const routes = require('./routes/api');

const app = express();
mongoose.connect(`mongodb+srv://nick:$password@cluster0.tvs6a.mongodb.net/phoneBook?retryWrites=true&w=majority`)
.then(result => 
  console.log('connected to MongoDB')
)
.catch((error) => 
  console.log('error connecting to MongoDB:', error.message)
)
//mongoose.Promise = global.Promise;

const cors = require('cors');

app.use(express.json());
app.use(routes);
app.use(function(err, req, res, next)
  //console.log(err);
  res.status(422).send(error: err.message);

);



const PORT = 3001
app.listen(PORT, () => 
  console.log(`Server running on port $PORT`)
)




const mongoose = require('mongoose');

// Entry Schema
const EntrySchema = new mongoose.Schema(
    name: 
       type: String,
       required: [true, 'Name field is required']
    ,
    number: 
      type: String,
      required: [true, 'Number field is required']
      
  )

  EntrySchema.set('toJSON', 
    transform: (Entry, returnedObject) => 
      returnedObject.id = returnedObject._id.toString()
      delete returnedObject._id
      delete returnedObject.__v
    
  )

// Entry model
const Entry = mongoose.model('entry', EntrySchema);

module.exports = Entry;

【问题讨论】:

【参考方案1】:

您缺少路径开头的/

router.delete('/api/entries/:id', function(req, res, next) 
    /// Here --^
    Entry.findByIdAndRemove(_id: req.params.id).then(function(entry)).res.send(entry);
);

【讨论】:

删除邮递员缓存

】删除邮递员缓存【英文标题】:Deletepostmancache【发布时间】:2016-03-2313:38:59【问题描述】:我使用Postman扩展来检查我的RESTfulAPI我正在尝试向我的“本地主机”发出请求,但它似乎缓存了其中一个查询参数。我尝试清除我的chro... 查看详情

使用python请求不起作用,但邮递员工作(代码片段)

我使用Django(Python3.5)并尝试request.post到一个url但它返回错误405.在postman我选择post方法并在body填充我的数据,标题是Content-Type:application/x-www-form-urlencoded,结果为true。我的python脚本是:importrequestsasrlogin_data='UserName':'uuuuu',' 查看详情

在邮递员中获取请求工作但在浏览器中不起作用

】在邮递员中获取请求工作但在浏览器中不起作用【英文标题】:GetRequestworkinpostmanbutdoesn\'tworkinbrowser【发布时间】:2019-10-0213:39:18【问题描述】:我的Web应用程序在客户端使用Angular7,在Api中使用CakePHP我正在使用BasicAuthentication... 查看详情

AWS S3使用邮递员将文件上传到存储桶不起作用

】AWSS3使用邮递员将文件上传到存储桶不起作用【英文标题】:AWSS3UploadingFiletoBucketusingPostmannotworking【发布时间】:2019-07-0912:17:27【问题描述】:我使用与GET请求相同的凭据,但是上传任何新文件的PUT请求失败并出现以下错误,... 查看详情

我的 post route 不起作用,postman 认为是 GET 请求

...(\'cart\',CartController::class);我试过清除缓存,但没有解决。邮递员的截图: 查看详情

发布请求上的 Ktor JSON 解析不起作用

...ing【发布时间】:2021-12-2005:36:36【问题描述】:每次我从邮递员发送一个帖子请求并且服务器给出这个错误时,即使我检查我是否收到Content-Type=Application/JSON。但是还是报这个错误。原因:java.lang.NoSuchMethodError:java.nio.By 查看详情

删除请求不起作用

】删除请求不起作用【英文标题】:Deleterequestnotworking【发布时间】:2018-11-2616:43:23【问题描述】:我正在尝试在我的项目中提出“删除请求”,但没有成功...向我返回此消息:""错误HttpErrorResponseheaders:HttpHeaders,status:200,statusText:... 查看详情

简单的 Javascript http 请求片段但不起作用

】简单的Javascripthttp请求片段但不起作用【英文标题】:SimpleJavascripthttprequestsnippetbutnotwork【发布时间】:2013-09-1615:50:13【问题描述】:部分教程修改代码如下:xmlhttp=newXMLHttpRequest();varurl="get_data.pl";xmlhttp.open("POST",url,true);xmlhttp.se... 查看详情

流明简单路由请求不起作用

】流明简单路由请求不起作用【英文标题】:Lumensimplerouterequestdoesn\'twork【发布时间】:2015-11-2317:16:47【问题描述】:我在我的网络服务器上安装了Lumen,但我遇到了路由问题//http://12.345.678.910/$app->get(\'/\',function()use($app)return"Th... 查看详情

cordova-HTTP:最简单的 GET 请求不起作用

】cordova-HTTP:最简单的GET请求不起作用【英文标题】:cordova-HTTP:mostsimpleGETrequestnotworking【发布时间】:2020-07-1102:25:41【问题描述】:我正在尝试使用cordova插件“cordova-HTTP”从我的Android模拟器向运行模拟器的笔记本电脑发送GET请... 查看详情

护照身份验证在 laravel 5.3 中不起作用

...avel.com/docs/5.3/passport.我在API路由中编写了一条路由并使用邮递员发送请求http://localhost/laravel 查看详情

https 在 react-native android 上不起作用

...p执行它,它工作正常。我用的是apisauce。我试过的:通过邮递员向https://my.api.url发出请求 查看详情

Spring Security JWT - 通过授权标头的邮递员身份验证有效,但从我的 Angular 前端不起作用

】SpringSecurityJWT-通过授权标头的邮递员身份验证有效,但从我的Angular前端不起作用【英文标题】:SpringSecurityJWT-PostmanauthenticationthroughAuthorizationheaderworksbutfrommyAngularfrontenddoesn\'twork【发布时间】:2020-10-0822:38:55【问题描述】:我... 查看详情

简单的 HTML DOM 解析器 - 删除元素不起作用

】简单的HTMLDOM解析器-删除元素不起作用【英文标题】:SimpleHTMLDOMParser-removingelementnotworking【发布时间】:2021-10-1604:46:14【问题描述】:我有以下HTML代码:<divid="hero_techSpec"><divclass="hero_techSpecItem">blubb</div></div>... 查看详情

在 bind_param 不起作用后查询 execute() [重复]

...发布时间】:2022-01-1417:07:42【问题描述】:基本上是通过邮递员的发帖请求将用户发送到附加到我的网站的PHP脚本,脚本就是这个<?phpinclude_once\'config.php\';header(\'Access-Control- 查看详情

PUT 请求 404 未找到错误邮递员? Node.js 快递

】PUT请求404未找到错误邮递员?Node.js快递【英文标题】:PUTrequest404notfounderrorPostman?Node.jsExpress【发布时间】:2021-05-1208:28:24【问题描述】:尝试发出PUT请求以更新我的MERN应用程序的房屋时。该路由似乎在服务器端不起作用,在... 查看详情

Post 在节点 js express 中不起作用

...应用程序中传递发布请求时,它不起作用。当我尝试使用邮递员发布数据时,数据没有传递,我得到以下值作为输出。“_id”:“615f2fe2fc52303bdb758e93”,“saltSecret”:"$2a$10$AmJCbqiunWY2S8 查看详情

Post 在节点 js express 中不起作用

...应用程序中传递发布请求时,它不起作用。当我尝试使用邮递员发布数据时,数据没有传递,我得到以下值作为输出。“_id”:“615f2fe2fc52303bdb758e93”,“saltSecret”:"$2a$10$AmJCbqiunWY2S8 查看详情