APIJSON icon indicating copy to clipboard operation
APIJSON copied to clipboard

新增支持代码风格

Open TommyLemon opened this issue 4 years ago • 0 comments

具体说下 现有新建别名和提取字段的风格: image

{   // isCodeStyle = false
    "User-gender:sex[]": {  // User.gender AS sex
        "User": {
            "@column": "id,sex:gender,name"  // sex AS gender
        }
    }
}

新增支持另一种接近 Java, JavaScript 的语言编码风格 image

{   // isCodeStyle = true,主要是空格 代替冒号 : 取别名,点 . 代替 - 提取字段
    "User.gender sex[]": {  // User.gender AS sex
        "User": {
            "@column": "id,sex gender,name",  // sex AS gender
            "DATETIME date": "2021-09-29 17:57"  // date = cast('2021-09-29 17:57' AS DATETIME)  主要用于  PostgreSQL 等对 
 JDBC 隐式类型转换支持不友好的数据库
        }
    }
}

缺点

  1. 用户误认为多个空格效果等同一个空格: 1.1 如果空格严格限制为一个,有些用户可能会多打空格导致报错;如果不严格限制,则浪费性能,且写法多样不利于收敛缓存 key 用来命中缓存。

  2. 不方便用 HTTP GET 方法来演示对应的功能: 2.1 点 . 在 URL 中会隔断后面的字符,导致传不到后端,并且还不能转义,而 - 不会有这个问题,且不转义,阅读更清晰; 2.2 空格 在 URL 中转义成 %20,不方便阅读,而冒号 : 则不转义,阅读更清晰;

为什么 比起现有的形式更接近开发编码习惯,更易学习和使用,在 HTTP POST JSON 时阅读也更清晰。

TommyLemon avatar Sep 29 '21 09:09 TommyLemon