阿里妹导读:在《Java 开发手册(泰山版)》发布之后引发了程序界的广泛讨论,技术和道理都是越辩越明的,相信带给了大家不少的收获。《Java 开发手册(嵩山版)》特别增加了前后端规约,并修复了一些原来存在的一些问题,接下来让我们先品尝一些嵩山版带来的新的滋味吧。此外为了更好地帮助大家理解运用,特别综合过往的规约和新增修订的内容给大家带来了一套测试题,还有机会获得机械键盘和社区周边!

在前后端程序员分工协作愈加普遍的今天,不但带来了效率上面的提升,也带来了诸多协作上的问题,本次开发手册新增的前后端规约旨在解决前后端程序员协作上的问题以及让大家规避常见的易于疏漏的错误。

正所谓“没有规矩,不成方圆”,大到前后端API的约定,小到前后端的时间格式约定,在现在的前后端协作当中存在着这样的问题,用苹果的宣传语来讲便是“唯一的不同,是处处不同”,每个系统都对应着自己的一套前后端约定非常不利于维护,混乱的约定更让系统接手与维护的人头痛不堪。规矩并非枷锁,而是老司机们上路的安全带,有了它,才能让我们在程序的世界里安全的驰骋,去最大可能的提升效率,去创造更大的奇迹。

API是前后端交互的基准石

在前后端交互的过程当中,API是重中之重,一个好的API应该能够明确协议、域名、路径、请求方法、请求内容、状态码、响应体等7个重要要素。一个好的API约定会让前后端双方能够为接下来的开发工作节省许多时间和沟通的成本,是我们前后端协作的基石。

神奇的大整数精度丢失

不同于后端程序的各种数字类型的明确区分,在JS的世界里数字只有一种类型,那就是Number类型,它其实是双精度浮点数,因此,它造成的麻烦总是使人困惑和痛苦,当我们将一个过大的整数传递给前端的时候,想象一下当它超过了双精度浮点数能最精确表示范围的时候会出现怎么样的悲剧吧?欲知详情如何,请见嵩山版开发手册吧。

系统错误信息与用户提示信息傻傻分不清楚

你是否曾经把异常带到了页面上?你是否把系统的错误提示发给了一脸懵的用户?今天,前后端规约将助你摆脱这样尴尬的境遇。用户体验不仅仅是产品设计需要考虑的部分,作为技术人的我们更应该注重产品本身的质量,因此用户提示一定要与系统本身的错误区分开,给用户更友好的提示也是系统鲁棒性的象征,另外发生错误的时候返回给前端的信息除了上面两种错误信息再搭配上错误码与HTTP状态码一起食用更香哦。

长度微妙的URL参数传递

很多场景需要我们用URL来做前后端的参数传递,但是比较微妙的是URL有最长长度的限制,而众多浏览器对URL最大长度限制却是不同的。不明确的地方都是不易察觉的深坑,不知道栽进去了多少的仁人志士,为了规避这样的深坑,前后端规约中特别指出,对于URL长度限制采用所有浏览器限制的最小值,为2048字节。

测试题大闯关

上面简单介绍了一下本次《Java 开发手册(嵩山版)》的一些有趣知识给大家品尝,更详细的内容还请参阅开发手册中的内容,相信能够给大家带来满满的收获。“纸上得来终觉浅,绝知此事要躬行”,本次我们还特别综合过往的规约和新增修订的内容给大家带来了一套试题,相信小伙伴们都迫不及待的要来试试啦,那么接下来就让我们开启一场激动人心的规约大闯关吧!

1  服务端发生错误时,返回给前端的响应信息必须包含以下哪几个部分?

A. HTTP状态码

B. errorCode

C. errorMessage

D. 用户提示信息

2  以下哪些时间类型在规约中不允许在程序中使用?

A. java.sql.Date

B. java.sql.Time

C. java.sql.Timestamp

D. java.util.Date

3  以下哪些选项不符合前后端交互的JSON格式数据中key的编码风格:

A. assetStatus

B. error_message

C. 3days

D. msg

4  前后端的时间格式统一为____,统一为GMT。

A. yyyy-MM-dd HH:mm:ss

B. yyyy-mm-dd HH:mm:ss

C. YYYY-MM-dd HH:mm:ss

D. yyyy-mm-DD HH:MM:ss

5  HTTP请求通过URL传递参数时,不能超过多少字节?

A. 1024字节

B. 2048字节

C. 4096字节

D. 8192字节

6  前后端交互的API,以下说法正确的是:

A. 请求的路径可以使用动词、名词、推荐使用名词单数

B. URL路径中单词要使用驼峰分隔

C. 路径禁止携带表示请求内容类型的后缀

D. 响应体body可放置多种数据类型,由Content-Type头来确定

7  对于日志的相关描述,下面正确的有?

A. 所有日志文件至少保存7天

B. 根据国家法律,网络运行状态、网络安全事件、个人敏感信息操作等相关记录,留存的日志不少于六个月,并且进行网络多机备份

C. 应用中的扩展日志(如打点、临时监控、访问日志等)命名方式:appName_logType_logName.log

D. 在日志输出时,字符串变量之间的拼接使用占位符的方式

8  以下说明属于正确的前后端规约内容的有哪几项?

A. 推荐在接口路径中加入版本号,来进行相应的版本控制

B. 服务端返回的数据,推荐使用JSON格式而非XML

C. 服务器返回信息必须被标记是否可以缓存,如果缓存,客户端可能会重用之前的请求结果

D. HTTP请求通过body传递内容时,必须控制长度,超出最大长度后,后端解析会出错

9  常见的HTTP状态码以下描述错误的是:

A. 401: 请求要求身份验证,常见对于需要登录而用户未登录的情况

B. 402:服务器拒绝请求,常见于机密信息或通过复制其它登陆用户链接访问服务器的情况

C. 501:服务器不支持请求的功能,无法完成请求

D. 502: 服务器产生内部错误

10  对于前后端传递整数的场景,当十进制整数大于等于多少位时,服务端需要采用String类型返回防止精度丢失?

A. 14

B. 15

C. 16

D. 17

11  对以下关于错误码叙述正确的是?

A. 错误码应该体现错误等级以及其版本号

B. 错误码在某些特殊场景下可以直接输出给用户作为提示信息使用

C. 错误码之外的业务独特信息由error_message来承载,而不是让错误码本身涵盖过多具体业务属性

D. 错误码使用者避免随意定义新的错误码

Tips:含多选题。评论区回复你的答案,阿里妹会在今天14:00统一放出含有答案的留言并公布获奖名单。届时将按留言先后顺序(14:00后的留言不计入,且每个ID以第一条回复为准),第一位全部答对的同学,送一个机械键盘。除此之外答对最多的前3位同学每人送一个双肩包,前4-6位每人送一件卫衣。

机械键盘

下载《Java开发手册(嵩山版)》

企鹅号登录显示服务器错误,腾讯内容开放平台相关推荐

  1. 利辛县腾讯服务器维护,腾讯内容开放平台

    从初次会面到相知相交 历经一年多的时间 2000业主选择了一期师大学府和二期师大学府·状元府 他们选择的不止是以人为本的精工品质 更是一种归心的生活方式 感谢利辛业主的厚爱和万千家庭的选择 值此近一年 ...

  2. 腾讯内容开放平台:将重拳打击盗号 严重违法行为将报送国家执法部门

    [TechWeb]3月13日消息,针对此前用户反馈的企鹅号账号被盗问题,腾讯内容开放平台发布<关于严打盗号和安全机制全面升级的公告>称,将重拳打击盗号.增强登录安全,逐步下线邮箱.手机登录 ...

  3. 腾讯内容开放平台---获取腾讯系全平台收益

    应该有很多人都知道QQ公众号,不过微信公众号现在把风头抢光了,反而没有什么人去看QQ公众号了. 做多媒体就是要把握住多种渠道. 所以今天就教大家去注册一下QQ公众号,顺便获取腾讯系全平台收益. 1.登 ...

  4. 考研报名登录显示服务器错误,2018年考研报名常见问题:填写网报信息

    2018年考研预报名将于9月24日开始,小编汇总了考研报名常见问题,下面是关于填写网报信息的问题答疑. 1.考生户口和考生档案相关内容,应该如何填写? 应届毕业生户口迁至学校的写现就读学校所在地和现就 ...

  5. 梦幻西游手游登录显示服务器错误,梦幻西游手游登录不了 为什么登陆失败

    梦幻西游手游登录不了怎么办,梦幻西游手游为什么登陆失败!梦幻西游手游登录失败上不了解决办法!梦幻西游手游这款万众瞩目的端游移植手游终于和大家见面了,虽然是限号的删档内测,但是火爆程度也是超出想象啊,小 ...

  6. 火山登录显示服务器错误是什么意思,火山obs直播权限_火山开播出现OBS什么意思...

    火山开播出现OBS什么意思 obs 录制软件 一般用来做直播 或者一些录制组会使用 我在火山里面看见有人直播手游怎么才能直播游戏 我在火山里面看见有人直播手游怎么才能直播游戏直播游戏... 我在火山里 ...

  7. 华为荣耀8手机微信登录显示服务器错误,华为荣耀8手机无法登录360会员圈由于华为荣耀8手机无法登录3 爱问知识人...

    2017-10-12 05:41:48 保存个人资料恢复出厂值试一下. 全部 2017-10-12 05:41:48 2017-10-12 05:41:48 会员的名称密码还有么 全部 2017-10 ...

  8. 梦幻西游手游登录显示服务器错误,梦幻西游手游无法登陆怎么解决 无法登陆原因及解决方案一览_3DM手游...

    在最近一段时间里,很多玩家在梦幻西游中突然发现无法登陆游戏,为什么会无法登陆游戏?这个问题有办法解决吗?下面小编就为大家介绍梦幻西游无法登陆的原因及解决办法,出现这种问题的小伙伴们快来看看吧. 梦幻西 ...

  9. cors账号登录显示服务器错误,详解如何解决CORS账号连接RTK无法获得固定解的问题...

    原标题:详解如何解决CORS账号连接RTK无法获得固定解的问题 在日常RTK测量的应用中,时常会出现无固定解的情况,导致测量测绘工作无法按时完成或者测量测绘结果精度无法保证. 如果你购买网络的是RTK ...

最新文章

  1. Maven学习总结(四)——Maven核心概念
  2. 日本搞出奇妙充电屋,坐在任意位置都能隔空充电!研究登上Nature子刊
  3. 轻松架设Win 2003用户隔离FTP站点
  4. devi into python 笔记(一)字典 列表的简单操作
  5. C#链接数据库增删改查的例子
  6. 【解决问题】IDEA配置Tomcat添加Deployment时没有Artifact
  7. LintCode MySQL 1932/1933. 挂科最多的同学 I / II
  8. 树莓派lnmp安装mysql_在树莓派上安装 LNMP
  9. php 系统找不到指定的路径.,PHP网站(windows2003服务器 IIS6)提示:系统找不到指定的路径。...
  10. JS1 js获取dom元素方法
  11. 弘辽科技:农夫山泉溜到了下坡路
  12. spark推测执行 优点 缺点
  13. 苹果电脑怎么更换计算机模式,苹果电脑装windows7后怎么切回来_苹果电脑安装win7后如何切换...
  14. C++ Primer Plus 编程练习3
  15. WBC世界棒球经典赛
  16. typedef的用法转
  17. Kx 系统与国信证券签定 OEM 合作协议
  18. 如何更换光猫HS8145C含破解超管
  19. [手游屌丝研究] 手游IP市场调查:授权金似北京房价【一】
  20. 计算机硬盘工作时注意,电脑硬盘如何保养 硬盘日常保养技巧【注意事项】

热门文章

  1. contains an incorrect path解决方法
  2. 微信H5游戏开发需要注意什么?
  3. python3 实现相似句语料生成-----爬取有道,google ,百度翻译生成
  4. 博微三维技术篇【五】——剖切出图
  5. Cisco MDS交换机配置ssh 免密登录
  6. Vue组件之间传值/调用方法的几种方式
  7. 现代饭店中主要有哪些计算机应用系统,酒店信息管理系统习题
  8. 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP...
  9. IDEA复制项目Module出现java文件夹source root解决方法
  10. copilot 常用快捷键