Comparing version 0.2.0 to 0.2.1
{ | ||
"name": "cichorium", | ||
"version": "0.2.0", | ||
"version": "0.2.1", | ||
"description": "Routing framework based on Promise using CoffeeScript", | ||
@@ -5,0 +5,0 @@ "homepage": "https://github.com/jysperm/Cichorium", |
# Cichorium | ||
Routing framework based on Promise using CoffeeScript. | ||
Cichorium has a `Route Table` and a `Error Route Table`. Route Table is an Array contains some of: | ||
* a Child Route Table (Array) | ||
* a Middleware (Function) | ||
Middleware will be executed sequentially, if middleware return a Promise, Cichorium will execute next middleware after the promise fulfilled. | ||
Inside middleware, you can use `nextRoute` skip other middlewares on this route, enter next route on parent level directly. Conditional-route are implemented by this feature, like match HTTP method or URL prefix. | ||
If middleware throws a Exception or Promise is rejected, Cichorium will enter error handling, middleware in error route table will be executed sequentially. if new exception has be thrown, the new exception will replace the original. | ||
Error middleware can use `errorResolved` to resolve exception, the other error middleware will not be executed. Unless there are more than one exception, the last exception will be passed to next error middleware. | ||
## Usage | ||
@@ -10,3 +23,3 @@ | ||
app.use '/account', (req, res) -> | ||
Account.authenticate(req.cookies['token']).then (account) -> | ||
Account.authenticate(req.headers['x-token']).then (account) -> | ||
req.account = account | ||
@@ -22,7 +35,1 @@ | ||
app.listen 3000 | ||
## TODO | ||
* param in url, prepare of param | ||
* render | ||
* send and render with promise |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
17687
34