MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

CastError:ObjectId पर कास्ट मॉडल के लिए पथ _id पर मूल्य मार्ग-नाम के लिए विफल रहा

आपके sysaccess.js . में मिडलवेयर का क्रम राउटर गलत है।

उदाहरण के लिए:

// "GET /sysaccess/test" will be processed by this middleware
router.get('/:id', (req, res) => {
  let id = req.params.id; // id = "test"
  Foo.findById(id).exec().then(() => {}); // This line will throw an error because "test" is not a valid "ObjectId"
});

router.get('/test', (req, res) => {
  // ...
});

समाधान 1: उन अधिक विशिष्ट बिचौलियों को उन अधिक सामान्य बिचौलियों से पहले आने दें।

उदाहरण के लिए:

router.get('/test', (req, res) => {
  // ...
});

router.get('/:id', (req, res) => {
  // ...
});

समाधान 2: next का उपयोग करें अगले मिडलवेयर को अनुरोध पास करने के लिए

उदाहरण के लिए:

router.get('/:id', (req, res, next) => {
  let id = req.params.id;

  if (id === 'test') { // This is "GET /sysaccess/test"
    return next(); // Pass this request to the next matched middleware
  }

  // ...
});

router.get('/test', (req, res) => {
  // ...
});



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB दस्तावेज़ से फ़ील्ड कैसे निकालें ($ अनसेट)

  2. सर्वर का सर्वर पता कैसे प्राप्त करें जिससे डेटा खींचा जाता है

  3. उच्च उपलब्धता के लिए MongoDB कैसे तैनात करें

  4. सी # मोंगोडब ड्राइवर 2.0 - थोक ऑपरेशन में कैसे सुधारें?

  5. MongoDB Stitch के साथ Android के लिए एक नोट लेने वाला ऐप बनाएं