Как мне перенаправить в выражении nodejs с другим телом запроса - PullRequest
0 голосов
/ 25 декабря 2018

я делаю сайт, вот мой код

в app.ts

import * as express from 'express';
import knex from './init/knex';

// Router
import indexRouter from './routers/index-router';

// Service
import gameService from './service/game-service';

const app = express();
var server = app.listen(8080, () => {
   console.log('listen to 8080');
})

app.use('/', new indexRouter(new gameService(knex)).router());

в index-router.ts

import * as express from 'express';

export default class indexRouter {
   private gameService: any;
   constructor(gameService: any) {
      this.gameService = gameService;
   }

   router() {
      let router = express.Router();
      router.get("/", this.get.bind(this));
      router.post("/test", this.test.bind(this));
      return router;
   }

   test(req: any, res: any) {
      // console.log("indexRouter get()");
      console.log(req.body);
      res.render("gameboard", { pin: "1", username: "1", player: 1 });
   }

   get(req: any, res: any, next:any) {
      req.body = {3:"3"};
      // something i want to do here
   }
}

Когдапользовательская ссылка на "http://localhost:8080/" и метод" get "называется Как я могу изменить:

  1. URL-адрес с" http://localhost:8080/" на "http://localhost:8080/test"
  2. вызовите метод "test" с новым телом запроса

Я потратил много времени на то, чтобы узнать, как это сделать, но я не могу найти лучший способ сделать две вышеуказанные вещи.

1 Ответ

0 голосов
/ 26 декабря 2018

Вы имеете в виду что-то вроде:

   get(req: any, res: any, next:any) {
      test(req.body);
      res.redirect('/test');
   } 

?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...