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協議每每經過如下方法來使用資源的狀態:
客戶端-服務器模式。
無狀態模式。
緩存模式。
分層模式。