Play 支持HTTP中规定的GET/POST/PUT/DELETE/HEAD五个方法,同时也支持WebSocket的调用,如须要匹配多个方法能够用 * ,* 表示接受全部请求方法:html
* /clients/{id} Clients.show
URI也支持多个动态部分,如: java
/clients/{id}/accounts/{accountId}
URI支持正则表达式,如: 正则表达式
/clients/{<[0-9]+>id} #只容许接受id为数字的值 /clients/{<[a-z]{4,10}>id} #id是长度为4到10字符的小写单词
在URL中能够指定静态参数,如 shell
GET /pages/home Application.page(id:'home') GET /pages/{id} Application.page //当id = home时,二者配置等价,可是根据优先级,会选前者
Play能够开放指定目录,存放静态资源。如:缓存
GET /public/ staticDir:public
也能够开放文件: 服务器
GET /home staticFile:/public/html/index.html
能够在Java代码中,反向生成请求的URL,如: url
Conf/routes: GET /clients/{id} Clients.show
Java中: code
map.put("id", 1541); String url = Router.reverse("Clients.show", map).url;
生成的数据: htm
GET /clients/1541
REST全称为Respresentational State Transfer ,表述性状态传输,其关键规则有:接口
应用的全部功能都被划分为资源
每一个资源都使用URI来惟一访问
全部资源共享统一的接口用于客户端与资源之间进行状态传输
若是应用使用的是HTTP协议,那么这些接口是经过可用的HTTP方法来定义,HTTP协议每每经过如下方法来使用资源的状态:
客户端-服务器模式。
无状态模式。
缓存模式。
分层模式。