APIJSON
APIJSON copied to clipboard
新增支持代码风格
具体说下
现有新建别名和提取字段的风格:

{ // isCodeStyle = false
"User-gender:sex[]": { // User.gender AS sex
"User": {
"@column": "id,sex:gender,name" // sex AS gender
}
}
}
新增支持另一种接近 Java, JavaScript 的语言编码风格

{ // 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 如果空格严格限制为一个,有些用户可能会多打空格导致报错;如果不严格限制,则浪费性能,且写法多样不利于收敛缓存 key 用来命中缓存。
-
不方便用 HTTP GET 方法来演示对应的功能: 2.1 点 . 在 URL 中会隔断后面的字符,导致传不到后端,并且还不能转义,而 - 不会有这个问题,且不转义,阅读更清晰; 2.2 空格 在 URL 中转义成 %20,不方便阅读,而冒号 : 则不转义,阅读更清晰;
为什么 比起现有的形式更接近开发编码习惯,更易学习和使用,在 HTTP POST JSON 时阅读也更清晰。