V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jueduizone
V2EX  ›  Java

Java 开发 App 接口中关于 url 和入参规范的问题

  •  1
     
  •   jueduizone · 2017-03-04 16:34:25 +08:00 · 4990 次点击
    这是一个创建于 2851 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在公司用开发给前端用的接口,语言是Java,现在想定开发规范,然后有些纠结的地方:

    一个是接口的名称,之前用的的驼峰的形式,比如myTopic,但是看网上推荐的有my_topic,更容易辨识,或者推荐比较多的my-topic,看到说法是比前一种输入起来更方便。

    还有个入参的问题,比如一个接口接受的参数是分页的页数,之前也是习惯性的驼峰的pageNum,但看很多公司,比如支付宝的接受参数都是page_num这种。

    想问下大家以上两个问题一般用的是那种或推荐哪种?

    第 1 条附言  ·  2017-03-22 16:01:05 +08:00

    感谢大家的回复,最后采用@yeyuexia的说法,谢谢~

    13 条回复    2017-03-07 09:33:17 +08:00
    zhihaofans
        1
    zhihaofans  
       2017-03-04 16:40:18 +08:00 via iPhone
    java 上我一般用第一种, php 才用第二种
    jueduizone
        2
    jueduizone  
    OP
       2017-03-04 17:14:29 +08:00
    @zhihaofans url 也是驼峰?阿里应该也是 java ,但参数是下划线,所以也很困惑
    qiayue
        3
    qiayue  
       2017-03-04 17:18:04 +08:00
    淘宝最初是 PHP 做的,所以参数是下划线形式,后来改成了 JAVA ,但是参数不能改

    URL 中,驼峰或者下划线都可以,但是比较少用横线吧
    nooper
        4
    nooper  
       2017-03-04 20:38:23 +08:00
    Swagger
    340244120
        5
    340244120  
       2017-03-04 20:39:52 +08:00 via Android
    java 系就好好用驼峰吧
    0915240
        6
    0915240  
       2017-03-04 20:42:50 +08:00
    rest 的话 我喜欢中划线
    0915240
        7
    0915240  
       2017-03-04 20:43:43 +08:00
    @0915240 指的是 uri ,参数的话还是老老实实的驼峰吧
    Cbdy
        8
    Cbdy  
       2017-03-04 21:01:17 +08:00 via Android
    和 Java 没有关系的吧,一般是 my-topic
    yeyuexia
        9
    yeyuexia  
       2017-03-05 00:45:52 +08:00
    我自己在推广的规范是这样 url 不用驼峰命名 其中 url 的 path 用-号分割单词, queryparam 用_分隔 body 里面的用 field 用驼峰命名。
    -分隔的东西在前端没办法很好的写成变量 所以避免了一些直接映射
    _分隔的东西可以很好写在 dict 的 key 里 很直观
    驼峰的东西就是数据的映射了

    习惯之后很直观,一看就知道是在哪用的
    sagaxu
        10
    sagaxu  
       2017-03-05 11:59:36 +08:00
    Java Bean 规范里规定用驼峰命名法,严格遵守可以省事不少
    sagaxu
        11
    sagaxu  
       2017-03-05 12:01:43 +08:00
    用驼峰, springmvc 可以直接把参数注入到 form 对象
    beginor
        12
    beginor  
       2017-03-06 08:50:59 +08:00 via Android
    两个不同的领域为什么非得一致,堂堂大 springmvc 难道没有 parameter binding ? https://msdn.microsoft.com/en-us/library/system.web.http.fromuriattribute(v=vs.118).aspx
    Fireflyi
        13
    Fireflyi  
       2017-03-07 09:33:17 +08:00
    就看语言本身 , java 的函数都是驼峰命名, javabean 规范也是 大部分也是驼峰,所以这个问题不需要纠结 直接使用驼峰就行,即正确又规范
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1294 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 17:38 · PVG 01:38 · LAX 09:38 · JFK 12:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.