Play框架拾遗之一:HTTP路由
Play框架拾遗之一:HTTP路由
刀狂剑痴 发表于2年前
Play框架拾遗之一:HTTP路由
  • 发表于 2年前
  • 阅读 530
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

这系列五篇文章,是我在涮www.playframework.cn的读摘,记录了一下重要能用得着,但是又不太熟悉的内容,根据层次划分了五章。

1、路由语法

Play 支持HTTP中规定的GET/POST/PUT/DELETE/HEAD五个方法,同时也支持WebSocket的调用,如需要匹配多个方法可以用 * ,* 表示接受所有请求方法:

*   /clients/{id}             Clients.show

URI也支持多个动态部分,如: 

 /clients/{id}/accounts/{accountId}

URI支持正则表达式,如: 

/clients/{<[0-9]+>id}   #只允许接受id为数字的值 
 /clients/{<[a-z]{4,10}>id} #id是长度为4到10字符的小写单词

在URL中可以指定静态参数,如 

 GET            /pages/home                  Application.page(id:'home') 
 GET            /pages/{id}                    Application.page //当id = home时,两者配置等价,但是根据优先级,会选前者

2、提供静态资源

Play可以开放指定目录,存放静态资源。如:

GET    /public/           staticDir:public

 也可以开放文件: 

 GET     /home                   staticFile:/public/html/index.html

3、逆向生成URL

可以在Java代码中,反向生成请求的URL,如: 

 Conf/routes:
GET    /clients/{id}      Clients.show

 Java中: 

 map.put("id", 1541); 
 String url = Router.reverse("Clients.show", map).url;

 生成的数据: 

 GET /clients/1541

4、关于REST

REST全称为Respresentational State Transfer ,表述性状态传输,其关键规则有:

  • 应用的所有功能都被划分为资源

  • 每个资源都使用URI来唯一访问

  • 所有资源共享统一的接口用于客户端与资源之间进行状态传输

如果应用使用的是HTTP协议,那么这些接口是通过可用的HTTP方法来定义,HTTP协议往往通过以下方法来使用资源的状态:

  • 客户端-服务器模式。

  • 无状态模式。

  • 缓存模式。

  • 分层模式。

标签: play 路由
共有 人打赏支持
粉丝 18
博文 111
码字总数 82582
×
刀狂剑痴
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: