Tag: 路由

用koa-routerredirectkoa中的嵌套路由

我如何使用koa-router做嵌套路由redirect? app.js: var router = require('koa-router')(); var route1 = require('./routes/route1'); var route2 = require('./routes/route2'); router.use('/route1', route1); router.use('/route2', route2); app.use(router.routes()); route1.js: var router = require('koa-router')(); router.all('/', function *() { router.redirect('/route2'); }); module.exports = router.routes(); route2.js: var router = require('koa-router')(); router.all('/', function *() { this.body = "route2"; }); 上面的代码在导航到/route1时导致以下错误: TypeError: Cannot read property '0' of undefined at […]

Angular.js和Node.js – 通过控制器将inputvariables传递给server.js

现在刚刚学习了MEAN栈,我正在摆弄它,但我有点迷路。 我想实现的是利用一个外部的API来自动填充关于最初input的标签的input字段。 所以问题是,如何将foo的值一直传递给server.js以进行调用? 最终用户input一个tag并按下“获取数据” 控制器将tag的值(在我的.ejs文件中定义为ng-model="object.tag" )传递给getData路由 server.js获取tag并将其传递到外部API URL中进行调用 外部API做它的事情,为我返回一个漂亮和漂亮的JSON文件。 控制器自动填充尽可能多的表单字段,因为它可以从返回的JSON。 这里有一些代码位,所以你可以理解我有更多的结构: –index.ejs– <input type="text" ng-model="object.tag" /> <button ng-click="grabFooInfo()">Get Data</button> –controller.js– $scope.grabFooInfo = function(){ $http.get('/getData').success(function(res){ // Will do stuff here after data comes back }); }; –server.js– app.get('/getData', function (req, res) { var options = { host: 'my.api.im.calling.com, path: '/v1/fooApi/' + // #Need foo here // […]

反应:根据请求的路线(ExpressJS)呈现内容(视图)

我最近开始学习React,并试图做一个简单的博客应用程序。 我在MongoDB中存储数据(发布内容,评论等),并希望根据路线呈现内容,例如,当我有一个特定的URL(如/ blog /:用户名)时,我会从数据库,然后用数据内容呈现一个视图。 使用Express,我现在使用静态HTML文件( express.static )作为视图,但是这使得不能根据请求的路线呈现内容,例如: /blog/:username/:article 使用模板引擎(如Jade)是可能的,但就我所知,Jade并不适用于React。 在保留URLpath结构的同时,使用React制作dynamic视图的正确方法是什么? 谢谢

性能/延迟差异 – Node.js中的dynamic与静态路由

如果我决定使用DRY方法并在一个路由可以处理多个不同的任务时dynamic地设置我的路由,这会导致延迟问题? 这是我的第一个Node.js项目,我只是将它用作后端来处理使用RESTful体系结构的请求,其中一些最终用户请求的数据可能非常大。 在决定在node.js中使用dynamic还是静态路由时,会有性能差异吗? 在那里,我有大约10个不同的资源可以获得 app.get('/resource1', …. app.get('/resource2', …. app.get('/resource3', …. app.get('/resource4', …. …. 大约有一半会通过参数或某种查询。 我目前configuration为它被dynamic设置,然后在我有sorting逻辑,然后我处理这样的要求。 app.get('/:resource* ', …. [sorting logic for every case] [handle request] 我假设这将导致更高的延迟。 这种情况下的折衷和最佳做法是什么?

Route.js多个路由文件,无法使用路由器get / post函数中的附加function

我设法将Route.js分解为多个控制器,但是我错过了为什么我不能使用其他函数来阻止查看页面的权限的知识。 // route.js module.exports = function(app, passport) { app.use('/profile', require('./controllers/profileController')); } 。 // profileController.js var express = require('express') , router = express.Router() , permissions = require('../utils/permissions.js') // ===================================== // /profile // ===================================== router.get('/', function(req, res) { res.render('Profile/index.ejs', {}); } module.exports = router; 为什么我不能在profileController中执行此操作? router.get('/', permissions.isLoggedIn, function(req, res) { res.render('Profile/index.ejs', {}); } 它引发错误: Error: Route.get() requires […]

Angular 2 RC与快速服务器而不是精简版服务器

我想用最新的angular 2 rc和express server来创build单个页面的应用程序。我不知道如何连接出来的凉亭,吞咽和webpack。 有一些起始包可用,但不能得到预期的。请引导我

Express中的404后备路线

我完全被Express看似不好的文档弄糊涂了。 我想存档一个非常简单的事情:返回一个自定义404为每个不匹配的路线在express 。 起初,这看起来很直截了当: app.get('/oembed', oembed()); // a valid route app.get('/health', health()); // another one app.get('*', notFound()); // catch everything else and return a 404 但是,当一个有效的URL被打开(像/oembed ) express继续通过路由工作,并最终调用notFound() 以及 。 我仍然可以看到我的/oembed响应,但是在控制台中出现错误,说已经发送正文时, notFound()试图设置标题( 404 )。 我试图实现一个捕获像这样的错误的中间件 function notFound() { return (err, req, res, next) => { console.log(err); res.sendStatus(404); next(err); }; } 并添加app.use(notFound()); ,但这甚至不会被调用。 我发现很难在互联网上find任何东西(例如,这不是过时的或错误的),官方文档似乎没有任何具体的这个非常标准的用例。 我有点卡在这里,我不知道为什么。

ngRoute的Angular Routing不适用于某些路由

在我的单页面应用程序中,我使用ngRoute进行angular度路由。 但是我正在面对angular度路由的一些问题。 configuration: app.config(function($routeProvider,$locationProvider){ $locationProvider.html5Mode(true); $locationProvider.hashPrefix('!'); $routeProvider .when('/product',{ templateUrl : 'views/product/template/product.html', controller : 'productCtrl' }) .when('/product/add',{ templateUrl : 'views/product/template/add-product.html', controller : 'productCtrl' }) }); 当我的路由path是/产品,那么一切都很好。 但是当我的路由path是/产品/添加,那么这似乎是一个错误。 但是,如果“/产品/添加”replace只是“/添加”,那么该路线也是可以的。 所以我不能识别什么是路由“/产品/添加”的主要问题。 错误: http://localhost:3000/product/views/product/template/add-product.html 404 (Not Found) 在这里我看到了一个问题。 其他路线如下: http://localhost:3000/views/product/template/product.html 但是服务器连接后错误路由有/ product。 需要一些澄清和解决这个问题。 提前致谢

理解从客户端(javascript)到服务器端(node.js)的路由

我是networking应用程序的新手,目前我正试图围绕从客户端到服务器端的路由回来。 我遇到了一个问题,我在客户端做了xmlhttprequest来获得一个json,它正在工作。 但现在,即时通讯不在本地运行GETS正在工作。 所以我想我必须做路由到服务器端,做请求()获取JSON,我可以。 但现在我不明白的是如何将该json传回客户端以使用该函数,因为所有使用此json的函数都在那里。 这可能吗? 还是我必须现在做一切服务器端? 服务器端 server.get('thankyou.html/something', function(req, res) { var options = { url: 'https://**.***.**.**:****/****/*******/', rejectUnauthorized: false, method: 'GET' }; request(options, function (error, response, body) { if (error) console.log(error); else displaytable(body);//<——- clientside funtion }); }); 客户端 var uri = 'thankyou.html/something'; function addTable() { var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function () […]

什么是快递req.locals vs res.locals的概念最佳实践?

从概念的angular度来看,这个请求似乎是通过中间件传播的,直到到达最终的中间件(以请求typesapp.get,app.post命名),然后请求被终止,响应在内部开始最终的中间件。 现在响应对象被创build…并包括任何响应variables和视图? 请求是在应用程序入口点还是在最终的中间件处结束? 我们在中间件中build立响应对象还是请求对象? 还是他们都平行过去,这真的没有关系? 这里有一个类似的问题,但没有回答我的满意。 req.locals与res.locals与res.data与req.data与快速中间件中的app.locals