path-to-regexp快速拆分restful路径的参数信息

原创
2017/02/10 17:07
阅读数 1.8K

还是介绍一个小工具 path-to-regexp 用于快速拆解url path中的部分,贴别适合restful接口中快速获取对应的实体参数

 

git地址可以参考 https://github.com/pillarjs/path-to-regexp

 


举个列子,当你监听history对象的时候可以获取到pathname对象,比如访问 /implatationdef/25 这个路径的时候,返回对象如下,这时候query对象是空的

 

当访问/implatationdef/25?a=111这个路径的时候,pathname对象是可以获取到query对象并正确解析键值对的关系

但是其实我们更关心implatationdef后面25这个表示projectid的对象,这时候就可以使用pathToRegex这个小工具了,利用正则快速抽出对应的参数对象

 

调用方法比较简单

if (pathname === '/implatationdef') {
  const match = pathToRegexp('/implatationdef/:projectId').exec(pathname);
  if (match) {
    const projectId = match[1];
    const query = {
      projectId:projectId,
    };
    dispatch({
      type: 'queryProjectDef',
      payload: query,
    });
  }
}

 

 

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部