javascript - koa 使用redirect跳转不起作用,求大神看看是为什么
高洛峰
高洛峰 2017-06-26 10:54:50
0
2
1824

//这是koa启动文件
var koa = require('koa');
var path = require('path');
var router = require('koa-router')();
var server = require('koa-static');

var datas = require('./app/router/datas');
var index = require('./app/router/index');

var app = new koa();

app.use(server(path.join(__dirname, 'app')));

router.use('/',index.routes());
router.use('/datas',datas.routes());

app.use(router.routes());

app.on('error', function(err,ctx){

console.log(err);

});

app.listen(9999,function(){

console.log('服务器已开启,端口9999,浏览器中打开:localhost:9999');

});

//这是index文件,index中使用了router.redirect方法
var router = require('koa-router')();

router.get('/', function() {

console.log('确实已经进来了'); try { router.redirect('', 'view/login/login.html'); } catch (error) { console.log(error); }

});

module.exports = router;

运行时,页面输入localhost:9999,控制台确实打出“确实已经进来了”,但是页面就是不跳转,这到底是为什么??帮帮忙。小白正在学koa!

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复 (2)
学霸

我写express时踩过这样的坑,当时好像是因为listen没有end。所以程序就一直在挂着。

你在redirect后加个router.end() //koa应该有这样的方法

    世界只因有你

    这个问题的原因是对router.redirect()方法理解不够的原因所致。真正的使用方法是:

    router.redirect('back',url)

    'back'其实是一个特殊的标识符,代表了Referrer。第二个参数才是跳转的新URL。

      最新下载
      更多>
      网站特效
      网站源码
      网站素材
      前端模板
      关于我们 免责声明 Sitemap
      PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!