一种基于工业互联网图片上传方法及系统
文献发布时间:2023-06-19 18:32:25
技术领域
本发明涉及图片上传技术领域,特别是涉及一种基于工业互联网图片上传方法及系统。
背景技术
传统工业互联网系统的文件上传技术,只能上传固定的图片,没有办法根据模板结合个人身份信息生成个人特有的唯一图片,而且现有图片上传技术一般都是读取的本地相册或者手机实时拍照,每次进行图片上传之前,都需要先保存到手机或者电脑本地,而且上传过程中可能存在对图片像素的压缩,导致一定的失真。
基于上述问题,工业互联网系统亟需一种新的图片上传方法或系统以提高上传过程中图片的质量、完整性以及安全性。
发明内容
本发明的目的是提供一种基于工业互联网图片上传方法及系统,能够提高上传过程中图片的质量、完整性以及安全性。
为实现上述目的,本发明提供了如下方案:
一种基于工业互联网图片上传方法,包括:
获取模板图片;
在工业互联网系统中,以企业微信为使用背景,在企业微信聊天侧边栏自定义功能中加载出所述模板图片;并利用企业微信用户授权接口,获取到当前操作人的个人企业微信信息;所述个人企业微信信息包括:名称、头像、职位以及所属部门;
将所述个人企业微信信息加载到所述模板图片对应的字段区域生成个人海报页面;
前端利用js截图技术,对所述个人海报页面进行截图,并生成base64的图片字符串;
前端利用http协议的post请求方式将图片字符串传递给后端;
后端对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片,进而将图片上传至企业微信的服务器。
可选地,所述获取模板图片,具体包括:
获取背景图;
在所述背景图上设置不同的字段区域;所述字段区域包括:头像和名称;
确定不同的字段区域的基本信息,进而确定模板图片;所述基本信息包括:图片大小、边距、姓名字体、颜色及位置信息。
可选地,所述前端利用http协议的post请求方式将图片字符串传递给后端,具体包括:
前端利用ajax异步请求,采用post请求方式,请求后端的http接口;
后端利用请求body实体接收前端传递的图片字符串。
可选地,所述后端对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片,进而将图片上传至企业微信的服务器,具体包括:
后端采用java jdk中带有的jar包工具类对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片;
获取生成的图片,并调用企业微信开源图片上传接口,将生成的图片上传至企业微信的服务器,并返回企业微信的素材id推送给前端;
前端根据素材id完成聊天窗口图片发送的操作。
一种基于工业互联网图片上传系统,包括:
模板图片获取模块,用于获取模板图片;
个人企业微信信息获取模块,用于在工业互联网系统中,以企业微信为使用背景,在企业微信聊天侧边栏自定义功能中加载出所述模板图片;并利用企业微信用户授权接口,获取到当前操作人的个人企业微信信息;所述个人企业微信信息包括:名称、头像、职位以及所属部门;
个人海报页面生成模块,用于将所述个人企业微信信息加载到所述模板图片对应的字段区域生成个人海报页面;
图片字符串生成模块,用于前端利用js截图技术,对所述个人海报页面进行截图,并生成base64的图片字符串;
图片字符串传递模块,用于前端利用http协议的post请求方式将图片字符串传递给后端;
图片上传模块,用于后端对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片,进而将图片上传至企业微信的服务器。
可选地,所述模板图片获取模块具体包括:
背景图获取单元,用于获取背景图;
字段区域设置单元,用于在所述背景图上设置不同的字段区域;所述字段区域包括:头像和名称;
模板图片确定单元,用于确定不同的字段区域的基本信息,进而确定模板图片;所述基本信息包括:图片大小、边距、姓名字体、颜色及位置信息。
可选地,所述图片字符串传递模块具体包括:
传递接口获取单元,用于前端利用ajax异步请求,采用post请求方式,请求后端的http接口;
图片字符串传递单元,用于后端利用请求body实体接收前端传递的图片字符串。
可选地,所述图片上传模块具体包括:
图片生成单元,用于后端采用java jdk中带有的jar包工具类对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片;
图片上传单元,用于获取生成的图片,并调用企业微信开源图片上传接口,将生成的图片上传至企业微信的服务器,并返回企业微信的素材id推送给前端;
图片上传完成单元,用于前端根据素材id完成聊天窗口图片发送的操作。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明所提供的一种基于工业互联网图片上传方法及系统,利用js截图技术,对个人海报页面进行截图,并生成base64的图片字符串,即利用图片字符串生成图片,进而不会出现压缩和失真的情况,最大程度上保证了图片文件的完整性。并且,采用post请求方式传递图片字符串,增加了信息传递的保密性和安全性,使传输过程更加安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的一种基于工业互联网图片上传方法流程示意图;
图2为本发明所提供的一种基于工业互联网图片上传系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于工业互联网图片上传方法及系统,能够提高上传过程中图片的质量、完整性以及安全性。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的一种基于工业互联网图片上传方法流程示意图,如图1所示,本发明所提供的一种基于工业互联网图片上传方法,包括:
S101,获取模板图片。
S101具体包括:
获取背景图。
在所述背景图上设置不同的字段区域;所述字段区域包括但不限于:头像和名称;根据操作人员的需要,确定头像和名称的字段区域相对于边框的高度和宽度百分比。
确定不同的字段区域的基本信息,进而确定模板图片;所述基本信息包括但不限于:图片大小、边距、姓名字体、颜色及位置信息。
S102,在工业互联网系统中,以企业微信为使用背景,在企业微信聊天侧边栏自定义功能中加载出所述模板图片;并利用企业微信用户授权接口,获取到当前操作人的个人企业微信信息;所述个人企业微信信息包括:名称、头像、职位以及所属部门。
S103,将所述个人企业微信信息加载到所述模板图片对应的字段区域生成个人海报页面。个人海报页面即为在背景图的基础上进行组装填充数据[名称,头像],个人海报页面为动态的页面。
S104,前端利用js截图技术,对所述个人海报页面进行截图,并生成base64的图片字符串。利用S104中的方法作为图片生成的前提条件,进而不会出现压缩和失真的情况,最大程度上保证了图片文件的完整性。
S105,前端利用http协议的post请求方式将图片字符串传递给后端。
S105具体包括:
前端利用ajax异步请求,采用post请求方式,请求后端的http接口。采用post请求方式传递图片字符串,增加了信息传递的保密性和安全性,使传输过程更加安全。
后端利用请求body实体接收前端传递的图片字符串。其中,请求body实体是post请求本身自带属性。
S106,后端对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片,进而将图片上传至企业微信的服务器。
S106具体包括:
后端采用java jdk中带有的jar包工具类对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片。之后,利用java 技术中现有的文件流(outPutStream)技术,对解码后的图片字符串进行处理,在系统中提前定义好文件生成的目录和具体文件名称及后缀名,使其能够在指定地方生成最终需要的图片。
获取生成的图片,并调用企业微信开源图片上传接口,将生成的图片上传至企业微信的服务器,并返回企业微信的素材id推送给前端。
前端根据素材id完成聊天窗口图片发送的操作。
图2为本发明所提供的一种基于工业互联网图片上传系统结构示意图,如图2所示,本发明所提供的一种基于工业互联网图片上传系统,包括:
模板图片获取模块201,用于获取模板图片。
个人企业微信信息获取模块202,用于在工业互联网系统中,以企业微信为使用背景,在企业微信聊天侧边栏自定义功能中加载出所述模板图片;并利用企业微信用户授权接口,获取到当前操作人的个人企业微信信息;所述个人企业微信信息包括:名称、头像、职位以及所属部门。
个人海报页面生成模块203,用于将所述个人企业微信信息加载到所述模板图片对应的字段区域生成个人海报页面。
图片字符串生成模块204,用于前端利用js截图技术,对所述个人海报页面进行截图,并生成base64的图片字符串。
图片字符串传递模块205,用于前端利用http协议的post请求方式将图片字符串传递给后端。
图片上传模块206,用于后端对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片,进而将图片上传至企业微信的服务器。
所述模板图片获取模块201具体包括:
背景图获取单元,用于获取背景图。
字段区域设置单元,用于在所述背景图上设置不同的字段区域;所述字段区域包括:头像和名称。
模板图片确定单元,用于确定不同的字段区域的基本信息,进而确定模板图片;所述基本信息包括:图片大小、边距、姓名字体、颜色及位置信息。
所述图片字符串传递模块205具体包括:
传递接口获取单元,用于前端利用ajax异步请求,采用post请求方式,请求后端的http接口。
图片字符串传递单元,用于后端利用请求body实体接收前端传递的图片字符串。
所述图片上传模块206具体包括:
图片生成单元,用于后端采用java jdk中带有的jar包工具类对所述图片字符串进行解码,得到解码后的图片字符串;并根据所述解码后的图片字符串生成图片。
图片上传单元,用于获取生成的图片,并调用企业微信开源图片上传接口,将生成的图片上传至企业微信的服务器,并返回企业微信的素材id推送给前端.
图片上传完成单元,用于前端根据素材id完成聊天窗口图片发送的操作。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
- 一种基于区块链的工业互联网架构及其运行方法
- 一种基于工业互联网平台能源管理的方法
- 一种图片上传方法、系统、图片上传客户端及网络服务器
- 一种图片上传方法、系统、图片上传客户端及网络服务器