Nodejs (экспресс) работает, но запросы не работают - PullRequest
0 голосов
/ 09 июня 2019

Я запускаю свой бэкэнд проекта 'server.js' (экспресс). работает правильно и без проблем. Но я отправляю запрос от Почтальона или другого приложения, я не могу получить ответ или ошибку. Только загрузка. Иногда это работает нормально, и я получаю все запросы правильно, но через несколько минут или часов я не могу получить ни одного ответа на запрос. Пожалуйста, помогите мне. В чем причина этой проблемы? Я использую Reactjs, Nodejs (экспресс)

Ответы [ 2 ]

0 голосов
/ 09 июня 2019

Это простой способ использования Express JS, может быть, вы можете попробовать.

Во-первых, вы должны ввести детали вашего приложения.

npm init

Во-вторых, вы должны установить Body Parser и Express

npm install body-parser express --save

В-третьих, поместите этот код в свои основные js (например, server.js или index.js, которые вы вводите в npm).init)

const BodyParser = require( 'body-parser' );
const Express = require( 'express' );
const App = Express();

// Parse request of content-type - application/x-www-form-urlencoded
App.use( BodyParser.urlencoded( { extended: false } ) );

// Parse request of content-type - application/json
App.use( BodyParser.json() );

App.listen( 3000, () => {
	console.log( "Server Run:" + 3000 );
} );

App.get( '/', function( req, res ) {
	res.json( {
		status: "OK"
	} );
} );

App.get( '/test', function( req, res ) {
	res.json( {
		status: "Hehehe Test"
	} );
} );

В-четвертых, запустите узел

node server.js

Теперь вы можете получить доступ к своему коду в браузере

http://localhost:3000/
http://localhost:3000/test
0 голосов
/ 09 июня 2019

используйте этот код как глобальную обработку ошибок в вашем исходном файле. и вы получите все ошибки res как JSON.

потому что, скорее всего, у вас может быть опечатка в вашем URL. так что с этим кодом вы получите .. а не ошибку поиска источника ... как json.

    
    // route not found
    app.use((req, res, next) => {
     const error = new Error('Not found');
     error.message = 'Invalid route';
     error.status = 404;
     next(error);
    });
   // log errors to console
    app.use(logErrors);
     //
    app.use(clientErrorHandler);
    app.use((error, req, res, next) => {
    res.status(error.status || 500);
      return res.json({
      status:error.status || 500,
      message: error.message,
      error: {
      error: error.message,
      },
    });
   });

// log errors to console
function logErrors(err, req, res, next) {
  console.error(err.stack);
  next(err);
}
// error handling for xhr request
function clientErrorHandler(err, req, res, next) {
  if (req.xhr) {
    //console.log('xhr request');
    res.status(400).send({status: 400, message: "Bad request from client", error: err.message });
  } else {
    next(err);
  }
}

let port = process.env.PORT || 8081;
app.listen(port, () => {
  console.log(`Listening on port ${port}`);
});
...