图片上传方法、系统及浏览器技术方案

技术编号:12821966 阅读:83 留言:0更新日期:2016-02-07 12:41
本发明专利技术提供一种图片上传方法、系统及浏览器,所述方法包括以下步骤:当接收到在打开的WEB页面中上传图片的指令时,通过浏览器程序内预置的文件上传通知接口启动浏览器的图片选择流程;在图片选择完成后,获取相应的图片数据;将所述图片数据传入所述WEB页面中。本发明专利技术的一种图片上传方法、系统及浏览器,解决了在特定情况下无法实现图片上传的缺陷,提高了图片上传的效率。

【技术实现步骤摘要】

本专利技术涉及互联网
,特别是涉及一种图片上传方法、系统及浏览器
技术介绍
在使用浏览器时,经常需要进行各种文件,如图片的上传操作;使用浏览器进行图片上传操作时,传统的上传方法中,以WindowsPhone8(即WP8)系统为例,一般是通过对打开的WEB页面进行分析,将WEB页面中的input标签进行动态劫持,从而将在浏览器内所选择的图片通过本地API(ApplicationProgrammingInterface,应用程序编程接口)上传至WEB页面中,实现图片的上传。传统方法会针对WEB页面中的input标签进行替换,但是当页面中不存在input标签或者页面使用了自定义的图片上传流程时,已有的图片上传方案将失效(如触屏版本的社交网站中上传图片的功能),此时将导致无法上传图片的问题出现。
技术实现思路
基于此,有必要针对某些特定情况下无法上传图片的问题,提供一种图片上传方法、系统及浏览器。为实现上述目的,本专利技术采用如下的技术方案:一种图片上传方法,包括以下步骤:当接收到在打开的WEB页面中上传图片的指令时,通过浏览器程序内预置的文件上传通知接口启动浏览器的图片选择流程;在图片选择完成后,获取相应的图片数据;将所述图片数据传入所述WEB页面中。一种图片上传系统,包括:图片选择启动模块,用于当接收到在打开的WEB页面中上传图片的指令时,通过浏览器程序内预置的文件上传通知接口启动浏览器的图片选择流程;图片数据获取模块,用于在图片选择完成后,获取相应的图片数据;图片上传模块,用于将所述图片数据传入所述WEB页面中。一种浏览器,包括上述的图片上传系统。由以上方案可以看出,本专利技术的一种图片上传方法、系统及浏览器,在浏览器程序内预置了文件上传通知接口,当需要进行图片上传时,通过该文件上传通知接口来主动通知浏览器启动图片选择流程,然后进行图片数据的获取后,将图片上传到WEB页面。本专利技术的方案不需要对WEB页面中的input标签进行替换处理,因此解决了在某些特定情况(例如WP8系统下需要在触屏版本的社交网站中上传图片)下无法实现图片上传的缺陷,提高了图片上传的效率。附图说明图1为本专利技术实施例一中的一种图片上传方法的流程示意图;图2为本专利技术实施例二中的一种图片上传方法的流程示意图;图3为本专利技术实施例中的一种图片上传系统的结构示意图;图4为能实现本专利技术实施例的一个计算机系统的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。除非上下文另有特定清楚的描述,本专利技术中的元件和组件,数量既可以单个的形式存在,也可以多个的形式存在,本专利技术并不对此进行限定。本专利技术中的步骤虽然用标号进行了排列,但并不用于限定步骤的先后次序,除非明确说明了步骤的次序或者某步骤的执行需要其他步骤作为基础,否则步骤的相对次序是可以调整的。实施例一参见图1所示,一种图片上传方法,包括以下步骤:步骤S101,当接收到在打开的WEB页面中上传图片的指令时,通过浏览器程序内预置的文件上传通知接口来唤醒和启动浏览器的图片选择流程,然后进入步骤S102。作为一个较好的实施例,上述通过文件上传通知接口来启动浏览器的图片选择流程的过程具体可以包括如下步骤:通过所述文件上传通知接口对所接收到的上传图片的指令进行解析,当解析到预定的特征字符串时,启动相应的图片选择流程。本专利技术实施例中,可以通过一个IE控件来启动图片选择流程,控件支持网页使用JS(JavaScript,客户端脚本语言)脚本对控件发送文本信息,预置的文件上传通知接口需要先接收到网页开发者通知过来的带有特征字符串的信息后,浏览器才能启动图片选择流程。以目前的业务情况为例,在一些社交网站触屏版适配WP8平台时,由于系统浏览器本身不支持使用<inputtype=\file\>唤醒系统文件上传的流程,需要第三方浏览器进行适配。基于此,本专利技术实施例在浏览器程序内预置了一个系统内核通知接口(即文件上传通知接口),用于在打开的网页页面中主动通知浏览器需要进行图片文件的上传操作。这样就可以避免传统方案中由于需要动态劫持WEB页面中的input标签并进行替换,当页面中不存在input标签或者页面使用了自定义的图片上传流程时(例如WP8系统下在触屏版本的社交网站中上传图片)所导致的无法实现图片上传的问题出现。步骤S102,在浏览器的图片选择流程启动后,用户可以按照自身的需求选择待上传的图片;本步骤中,在检测到图片选择完成后,获取相应的图片数据,然后进入步骤S103。步骤S103,将所述图片数据传入所述WEB页面中。作为一个较好的实施例,步骤S103中将所述图片数据传入所述WEB页面中的过程具体可以包括如下步骤:步骤S1031,判断所述图片数据的大小是否超过设定阈值;若否,则进入步骤S1032。需要说明的是,上述的阈值可以根据浏览器的处理性能等来进行设置,例如本专利技术实施例中可以将其设置为1MB。步骤S1032,若步骤S1031的判断结果为否,即所述图片数据的大小未超过设定阈值,则可以对所述图片数据进行编码处理,并将编码处理后的图片数据传入所述WEB页面中,然后就可以在WEB页面中发起正常的图片上传流程,从而完成图片的上传操作。作为一个较好的实施例,对所述图片数据进行编码处理、并将编码处理后的图片数据传入所述WEB页面中的过程具体可以包括如下步骤:将所述图片数据编码成base64字符串,并将该base64字符串以JS对象的形式传入所述WEB页面中。Base64是用于传输8Bit字节代码的编码方式之一,可用于在HTTP(Hypertexttransferprotocol,超文本传输协议)环境下传递较长的标识信息。另外,在实际应用中我们发现,由于浏览器内核本身存在缺陷,而且用户的图片数据的大小不可预料,当图片体积超过某个阈值时,程序内存将会快速升高导致浏览器内核出现伪内存泄漏。为解决这个问题,作为一个较好的实施例,本专利技术的一种图片上传方法还可以包括如下步骤:步骤S1033,若步骤S1031的判断结果为是,即判断得出所述图片数据的大小超过了设定阈值(例如1MB),则对所述图片数据进行压缩处理,得到预设尺寸大小的图片数据;步本文档来自技高网...

【技术保护点】
一种图片上传方法,其特征在于,包括以下步骤:当接收到在打开的WEB页面中上传图片的指令时,通过浏览器程序内预置的文件上传通知接口启动浏览器的图片选择流程;在图片选择完成后,获取相应的图片数据;将所述图片数据传入所述WEB页面中。

【技术特征摘要】
1.一种图片上传方法,其特征在于,包括以下步骤:
当接收到在打开的WEB页面中上传图片的指令时,通过浏览器程序内预置
的文件上传通知接口启动浏览器的图片选择流程;
在图片选择完成后,获取相应的图片数据;
将所述图片数据传入所述WEB页面中。
2.根据权利要求1所述的图片上传方法,其特征在于,通过所述文件上传
通知接口启动浏览器的图片选择流程的过程包括:
通过所述文件上传通知接口对所接收到的上传图片的指令进行解析,当解
析到预定的特征字符串时,启动相应的图片选择流程。
3.根据权利要求1所述的图片上传方法,其特征在于,将所述图片数据传
入所述WEB页面中的过程包括:
判断所述图片数据的大小是否超过设定阈值;
若否,则对所述图片数据进行编码处理,并将编码处理后的图片数据传入
所述WEB页面中。
4.根据权利要求3所述的图片上传方法,其特征在于,还包括步骤:
若判断得出所述图片数据的大小超过设定阈值,则对所述图片数据进行压
缩处理,得到预设尺寸大小的图片数据;
对压缩处理后的图片数据进行编码处理,并将编码处理后的图片数据传入
所述WEB页面中。
5.根据权利要求3所述的图片上传方法,其特征在于,在判断得出所述图
片数据的大小未超过设定阈值之后、对所述图片数据进行编码处理之前,还包
括步骤:
对所述图片数据进行压缩处理,得到预设尺寸大小的图片数据。
6.根据权利要求4或5所述的图片上传方法,其特征在于,对所述图片数
据进行编码处理、并将编码处理后的图片数据传入所述WEB页面中的过程包
括:
将所述图片数据编码成base64字符串,并将该base64字符串以JS对象的

\t形式传入所述WEB页面中。
7.一种图片上传系统,其特征在于,包括:
图片选择启动模块,用于当接收到在打开的WEB页面中上传图片的指令
时,通过浏览器程序内预置的文件上传通知接口启动浏览器的图片选...

【专利技术属性】
技术研发人员:张锐杰陈超铭
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1