Skip to content
This repository has been archived by the owner on Apr 18, 2018. It is now read-only.

About the router

Avaq edited this page Mar 28, 2012 · 4 revisions

About the router

The route is defined by the REQUEST made by the client.
The request consists of a request_method and a request_uri.
The request methods can be [GET, POST, PUT, DELETE], and will be used in the REST protocol.
The request_uri will be split up into segments divided by slashes (/).
The last segment will be used as "endpoint" and must contain a trailing slash or extension.
The first segment must be "com" or an alias defined in the database.
When the first segment is "com", the second segment must contain a component name.

The router does this:

//example input: "GET http://www.example.com/com/content/articles/how+to+farm"

/com -> call system pre processors
/com/content -> call component pre processors
/com/content/articles -> call component pre processors
/com/content/articles/how+to+farm -> call component pre processors

check if user has permissions based on permissions added by the pre processors

/com/content/articles/how+to+farm -> call component endpoint processor
/com/content/articles -> call component post processors
/com/content -> call component post processors
/com -> call system post processors

output the content in a format based on the file extension

Clone this wiki locally