koa2 сообщение всегда показывает метод не допускается? - PullRequest
0 голосов
/ 02 сентября 2018
//server.js
const Koa = require('koa')
const app = new Koa();
const bodyParser = require('koa-bodyparser');
app.use(bodyParser());   
const Router = require('koa-router');
const fs = require('fs');

const router = new Router();
const UserController = require('./server/controller/user.js');
const checkToken = require('./server/token/checkToken.js');
router.get('/user/login', async ctx => {
 ctx.body = JSON.parse(fs.readFileSync( './pass.json'));
 console.log(ctx.body);
 });

router.post('/signin', async (ctx, next) => {
  var
    name = ctx.request.body.name || '',
    password = ctx.request.body.password || '';
    console.log(`signin with name: ${name}, password: ${password}`);
  if (name === 'koa' && password === '12345') {
 ctx.response.body = `<h1>Welcome, ${name}!</h1>`;
  } else {
 ctx.response.body = `<h1>Login failed!</h1>
 <p><a href="/">Try again</a></p>`;
 }
 });

     app.use(router.routes()).use(router.allowedMethods());

app.listen(8090, () => {
   console.log('The server is running at http://localhost:' + 8090);
 });

koa:2.52
koa-bodyparse:4.21
koa-router:7.4

когда я набираю http://localhost:8090/user/login, можно получить данные Json, но тип http://localhost:8090/signin всегда показывает 405 методов, не разрешенных, (debian firefxo) show Метод запроса "GET", Разрешить ответ: POST, Connection : "поддерживать жизнь" Я надеюсь получить вашу помощь.

1 Ответ

0 голосов
/ 19 октября 2018

Полагаю, вам не следует использовать Chrome, чтобы указывать причину, когда вы набираете какой-либо URL-адрес. По умолчанию используется метод GET, а не POST. Вы можете проверить это в NETwork. английский, надеюсь, это поможет XD

...