1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > KoaHub平台基于Node.js开发的router路由插件代码

KoaHub平台基于Node.js开发的router路由插件代码

时间:2019-04-14 10:16:16

相关推荐

KoaHub平台基于Node.js开发的router路由插件代码

php教程|php手册

thinkphp代码,代码示例,代码参考,php短信,数据库备份代码,令牌验证,去除代码中的空白和注释Koa.js,No

php教程-php手册

KoaHub平台基于Node.js开发的Koa router路由插件代码信息详情

koa-router

小程序源码是什么,vscode文件类型识别,svn ubuntu搭建,配置tomcat日志时间,爬虫爬地面,php 获取对象名,抖音seo公司怎么盈利,网站模板源码下载后怎么使用,电子产品模板lzw

Router middleware for koa. Provides RESTful resource routing.

帝国在线阅读源码,ubuntu下载软件搜狗,家里大的爬虫,php magodb,seo优化 期刊lzw

koa-router

matrix xmpp 源码,vscode错误曲线,ubuntu支持哪种显卡,jar放到tomcat,sqlite3 软件,免费日历插件,前端框架模块教程学习,安居客最新爬虫,php 取域名,南通seo营销,云免网站源码,微信网页版 机器人,企业手机版前端模板,页面高度代码,租房管理系统代码,104规约 java程序lzw

[list][*]Express-style routing using app.get, app.put, app.post, etc.

[*]Named URL parameters.

[*]Named routes with URL generation.

[*]Responds to OPTIONS requests with allowed methods.

[*]Support for 405 Method Not Allowed and 501 Not Implemented.

[*]Multiple route middleware.

[*]Multiple routers.

[*]Nestable routers.

[*]ES7 async/await support (koa-router 7.x).[/list]koa 2.x

See koa-router 7.x for koa 2.x and async/await support.

Installation

Install using npm:npm install koa-routerAPI Reference[list][*]koa-router

[*]Router ⏏

[*]new Router([opts])

[*]instance

[*].get|put|post|patch|delete ⇒ Router

[*].param(param, middleware) ⇒ Router

[*].use([path], middleware, […]) ⇒ Router

[*].routes ⇒ function

[*].allowedMethods([options]) ⇒ function

[*].redirect(source, destination, code) ⇒ Router

[*].route(name) ⇒ Layer | false

[*].url(name, params) ⇒ String | Error

[*]static

[*].url(path, params) ⇒ String[/list]Router

Kind: Exported class

new Router([opts])

Create a new router.

[table=50%]

Param

Type

Description[opts]Object[opts.prefix]Stringprefix router paths

[/table]Example Basic usage:var app = require(koa)();

var router = require(koa-router)();

router.get(/, function *(next) {...});

app

.use(router.routes())

.use(router.allowedMethods());router.get|put|post|patch|delete ⇒ Router

Create router.verb() methods, where verb is one of the HTTP verbes such as router.get() or router.post().

Match URL patterns to callback functions or controller actions using router.verb(), where verb is one of the HTTP verbs such as router.get() or router.post().router

.get(/, function *(next) {

this.body = Hello World!;

})

.post(/users, function *(next) {

// ...

})

.put(/users/:id, function *(next) {

// ...

})

.del(/users/:id, function *(next) {

// ...

});Route paths will be translated to regular expressions using path-to-regexp.

Query strings will not be considered when matching requests.

Named routes

Routes can optionally have names. This allows generation of URLs and easy renaming of URLs during development.router.get(user, /users/:id, function *(next) {

// ...

});

router.url(user, 3);

// => "/users/3" Multiple middleware

Multiple middleware may be given:router.get(

/users/:id,

function *(next) {

this.user = yield User.findOne(this.params.id);

yield next;

},

function *(next) {

console.log(this.user);

// => { id: 17, name: "Alex" }

}

);Nested routers

Nesting routers is supported:var forums = new Router();

var posts = new Router();

posts.get(/, function *(next) {...});

posts.get(/:pid, function *(next) {...});

forums.use(/forums/:fid/posts, posts.routes(), posts.allowedMethods());

// responds to "/forums/123/posts" and "/forums/123/posts/123"

app.use(forums.routes());Router prefixes

Route paths can be prefixed at the router level:var router = new Router({

prefix: /users

});

router.get(/, ...); // responds to "/users"

router.get(/:id, ...); // responds to "/users/:id" URL parameters

Named route parameters are captured and added to ctx.params.router.get(/:category/:title, function *(next) {

console.log(this.params);

// => { category: programming, title: how-to-node }

});Kind: instance property of Router

[table=50%]

ParamTypeDescriptionpathString[middleware]functionroute middleware(s)callbackfunctionroute callback

[/table]router.routes ⇒ function

Returns router middleware which dispatches a route matching the request.

Kind: instance property of Router

router.use([path], middleware, […]) ⇒ Router

Use given middleware(s) before route callback.

Only runs if any route is matched. If a path is given, the middleware will run for any routes that include that path.

Kind: instance method of Router

[table=50%]

ParamType[path]Stringmiddlewarefunction[…]function

[/table]Examplerouter.use(session(), authorize());

// use middleware only with given path

router.use(/users, userAuth());

app.use(router.routes());router.prefix(prefix) ⇒ Router

Set the path prefix for a Router instance that was already initialized.

Kind: instance method of Router

[table=50%]

ParamTypeprefixString

[/table]Examplerouter.prefix(/things/:thing_id)router.allowedMethods([options]) ⇒ function

Returns separate middleware for responding to OPTIONS requests with an Allow header containing the allowed methods, as well as responding with 405 Method Not Allowed and 501 Not Implemented as appropriate.

Kind: instance method of Router

[table=50%]

ParamTypeDescription[options]Object[options.throw]Booleanthrow error instead of setting status and header[options.notImplemented]Functionthrow the returned value in place of the default NotImplemented error[options.methodNotAllowed]Functionthrow the returned value in place of the default MethodNotAllowed error

[/table]Examplevar app = koa();

var router = router();

app.use(router.routes());

app.use(router.allowedMethods());

Example with Boom

var app = koa();

var router = router();

var Boom = require(oom);

app.use(router.routes());

app.use(router.allowedMethods({

throw: true,

notImplemented: () => new Boom.notImplemented(),

methodNotAllowed: () => new Boom.methodNotAllowed()

}));router.redirect(source, destination, code) ⇒ Router

Redirect source to destination URL with optional 30x status code.

Both source and destination can be route names.router.redirect(/login, sign-in);This is equivalent to:router.all(/login, function *() {

this.redirect(/sign-in);

this.status = 301;

});Kind: instance method of Router

[table=50%]

ParamTypeDescriptionsourceStringURL or route name.destinationStringURL or route name.codeNumberHTTP status code (default: 301).

[/table]router.route(name) ⇒ Layer | false

Lookup route with given name.

Kind: instance method of Router

ParamType

nameString

router.url(name, params) ⇒ String | Error

Generate URL for route. Takes the route name and a map of named

wemall 开源微商城 ,微信商城,商城源码,三级分销,微生鲜,微水果,微外卖,微订餐—专业的o2o系统

wemall地址:

代码来源:/home/feature/koa-jwt

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。