我正在做一个教程,但无法获得与https://youtu.be/qmNPpoVkY2Y?t=1238部分相同的结果

我可以通过邮递员邮寄,但不能获取。

这是我得到的快照。

https://imgur.com/a/PHHXHQO

服务器/ index.js

import express from 'express';
import dbConfig from './config/db';
import middlewareConfig from './config/middlewares';
import { MeetupRoutes } from './modules';

const app = express();

/**
*Database
*/
dbConfig();
/**
*Middlewares
*/
middlewareConfig(app);

app.use('/api', [MeetupRoutes]);

const PORT = process.env.PORT || 3000;

app.listen(PORT, err => {
  if (err) {
    console.error(err);
  }{
    console.log('App listen to port: ${PORT}');
  }
});


db.js

import mongoose from 'mongoose';

export default () => {
  mongoose.Promise = global.Promise;
  mongoose.connect('mongodb://localhost/meetupME');
  mongoose.connection
    .once('open', () => console.log('Mongobd running'))
    .on('error', err => console.error(err))

};


middleware.js

import bodyParser from 'body-parser';
import morgan from 'morgan';

export default app => {
  app.use(bodyParser.json());
  app.use(bodyParser.urlencoded({ extended: false}));
  app.use(morgan('dev'));
};


Meetups / controller.js

import Meetup from './model';

export const createMeetup = async (req,res) => {
  const { title, description } = req.body;
  const newMeetup = new Meetup({ title, description });

  try {
    return res.status(201).json({ meetup: await newMeetup.save() });
  } catch (e) {
    return res.status(e.status).json({ error: true, message: 'Error with Meetup' });
  }
}

export const getAllMeetups = async (req, res) => {
  try {
    return res.status(200).json({ meetups: await Meetup.find({} )});
  } catch (e) {
    return res.status(e.status).json({ error: true, message: 'Error with Meetup' });
}
}


Meetup / index.js

import MeetupRoutes from './routes';

export { MeetupRoutes };


Meetup / model.js

import mongoose, { Schema } from 'mongoose';

const MeetupSchema = new schema({
  title: {
    type: String,
    required: true
  },
  description: {
    type: String,
    required: true
  }
});

export default mongoose.model('Meetup', MeetupSchema);


Meetup / routers.js

import { Router } from 'express';
import * as MeetupController from './controller'

const routes = new Router();

routes.post('/meetups', MeetupController.createMeetup);
routes.get('/meetups', MeetupController.getAllMeetups);

export default routes;


我试图检查拼写错误,但是由于某种原因,我无法使其正常工作。谢谢!

这也是邮递员导出的请求:

GET /api/meetups HTTP/1.1
Host: localhost:3000
Content-Type: application/x-www-form-urlencoded
cache-control: no-cache
Postman-Token: e912d6ac-d9b6-465d-88e8-4aee65a906fa
title=title1description=This+is+a+descriptionundefined=undefined

最佳答案

您是否尝试将x-www-form-urlencoded更改为Postman上的raw?
还选择类型application / json

node.js -  postman 401未经授权|不能获取-LMLPHP

关于node.js - postman 401未经授权|不能获取,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54668527/

10-10 10:25