[发明专利]一种基于套接字通信的JSON命令处理方法及装置在审
申请号: | 201710890388.0 | 申请日: | 2017-09-27 |
公开(公告)号: | CN107783848A | 公开(公告)日: | 2018-03-09 |
发明(设计)人: | 潘娜 | 申请(专利权)人: | 歌尔科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京市隆安律师事务所11323 | 代理人: | 权鲜枝,吴昊 |
地址: | 266104 山东省青岛*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 套接 通信 json 命令 处理 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种基于套接字通信的JSON命令处理方法及装置。
背景技术
JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式,它是基于JavaScript的一个子集。JSON采用完全独立于编程语言的文本格式来存储和表示数据,其既易于人阅读和编写,同时也易于机器转换和生成,并有效提升网络传输效率。
客户端可基于套接字socket与服务端进行通信,并采用JSON命令双向交互数据。客户端发送的JSON命令需要符合预设的格式,服务端才能对JSON命令进行解析并执行。然而,在开发过程中,用户可能拼错字符、漏写字符等,造成发送到服务端的JSON命令无效,服务端无法对无效的JSON命令进行解析,但客户端与服务端之间的套接字socket连接一直存在,造成内存资源的浪费。
并且,用户还可能输入服务端不支持的命令及赋值,造成发送到服务端的JSON命令无效,服务端无法执行无效的JSON命令,但现有技术对无效的JSON命令缺少反馈机制,给用户造成困扰。
发明内容
为了解决现有技术无法对无效的JSON命令进行解析导致内存资源浪费的问题,本发明提供了一种基于套接字通信的JSON命令处理方法及装置。
第一方面,本发明提供基于套接字通信的JSON命令处理方法,包括:
基于套接字连接接收第一终端发送的JSON命令,以JSON命令的分隔符为界限,依次读取JSON命令中的各个字符串;
根据所读取的各个字符串的类型判断JSON命令是否符合预设的格式,其中,预设的格式包括开始结构字符和结束结构字符,开始结构字符和结束结构字符之间包括操作命令标识字符和对应的操作命令以及命令参数和对应的命令参数值;
若判断JSON命令不符合预设的格式,则关闭套接字连接。
可选地,该方法还包括:
若判断JSON命令符合预设的格式,则根据预设的操作命令集合判断所读取的操作命令及命令参数值是否有效,其中,预设的操作命令集合中包括操作命令及命令参数取值范围的对应关系;
若判断所读取的操作命令或命令参数值无效,则向第一终端发送JSON命令无效反馈信息。
可选地,判断所读取的操作命令及命令参数值无效,包括:当读取的操作命令不属于预设的操作命令集合,或,
读取的操作命令属于预设的操作命令集合,读取的命令参数值不在预设的操作命令集合对应的命令参数取值范围中,则判断所读取的操作命令及命令参数值无效。
可选地,该方法还包括:若判断JSON命令符合预设的格式且所读取的操作命令及命令参数值有效,则执行操作命令。
可选地,JSON命令的分隔符为冒号或逗号;
界限是指在读取到JSON命令的分隔符时即认为当前字符串读取完毕。
第二方面,本发明提供一种基于套接字通信的JSON命令处理装置,包括:
JSON命令字符串读取单元,用于基于套接字连接接收第一终端发送的JSON命令,以JSON命令的分隔符为界限,依次读取JSON命令中的各个字符串;
JSON命令格式解析单元,用于根据所读取的各个字符串的类型判断JSON命令是否符合预设的格式,其中,预设的格式包括开始结构字符和结束结构字符,开始结构字符和结束结构字符之间包括操作命令标识字符和对应的操作命令以及命令参数和对应的命令参数值;
连接关闭单元,用于当判断JSON命令不符合预设的格式时,关闭套接字连接。
可选地,还包括:
操作命令解析单元,用于当判断JSON命令符合预设的格式时,根据预设的操作命令集合判断所读取的操作命令及命令参数值是否有效,其中,预设的操作命令集合中包括操作命令及命令参数取值范围的对应关系;
反馈信息发送单元,用于当判断所读取的操作命令或命令参数值无效时,向第一终端发送JSON命令无效反馈信息。
可选地,反馈信息发送单元进一步用于,当读取的操作命令不属于预设的操作命令集合时,
或,
读取的操作命令属于预设的操作命令集合,读取的命令参数值不在预设的操作命令集合对应的命令参数取值范围中时,判断所读取的操作命令及命令参数值无效。
可选地,还包括命令执行单元,用于当判断JSON命令符合预设的格式且所读取的操作命令及命令参数值有效时,执行操作命令。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于歌尔科技有限公司,未经歌尔科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710890388.0/2.html,转载请声明来源钻瓜专利网。