path-match.md 1.2 KB
Newer Older
1 2 3 4
## URI路径匹配  

我们配置的资源格式为:`requestUri===httpMethod`, 即请求的路径加上其请求方式(`post,get,put,delete...`)作为一个整体被视作一个资源   
`eg: /api/v2/book===get` `get`方式请求`/api/v2/book`接口数据  
5
这里的`requestUri`支持url路径匹配符匹配: `str*str`, `*`, `**`    
6 7

 通配符                      | 描述              
8 9
 ---                        | ---         
`str*str`                     | 字符串中的*匹配0个或者多个任意字符         
10 11 12 13 14 15
 `*`                          | 匹配0个或1个目录   
 `**`                         | 匹配0个或多个目录  


 样例                      | 说明  
 ---                       | ---
16
 `*.html`                    | 可以匹配 `content.html`, `user-ui.html`
17 18 19 20
 `/api/*/book`               | 可以匹配 `/api/user/book``/api/book`
 `/**`                       | 可以匹配任何路径  
 `/**/foo`                   | 可以匹配 `/api/user/book/foo`
 
21
匹配优先级: 原始字符串 > `str*str` > `*` > `**`  
22 23
最长路径匹配原则:  
eg: `requestUri``/app/book/foo`,若存在两个路径匹配模式`/app/**``/app/book/*`,则会匹配到`/app/book/*`