一种图片自动存储的方法及系统与流程

文档序号:12789723阅读:348来源:国知局
一种图片自动存储的方法及系统与流程

本发明涉及软件通信领域,尤其涉及一种应用于富文本编辑器的图片自动存储的方法及系统。



背景技术:

目前,在富文本编辑器的编辑框内进行输入操作,例如可以通过复制网站上的内容粘贴至编辑框内,但如果网站上的内容中存在图片数据资源,富文本编辑器只是简单地显示存储在外地服务器的图片数据资源,供用户浏览。然而由于图片数据资源是存储在外地服务器,即为第三方服务器,当第三方服务器发生宕机时,会造成图片数据资源获取不到,以及存在第三方服务器图片数据防盗链等问题,此时大大影响用户浏览体验。



技术实现要素:

本发明所要解决的技术问题是:提供一种图片自动存储的方法及系统,能够有效防止第三方服务器发生宕机时造成图片数据资源获取不到。

为了解决上述技术问题,本发明采用的技术方案为:

一种图片自动存储的方法,包括:

富文本编辑器的编辑框接收到输入数据,判断所述输入数据中是否含有图片数据;

若是,则获取所述图片数据对应的原存储地址;

判断获取到的原存储地址是否为非本地存储地址,若是,则服务端根据所述原存储地址下载对应图片数据,存储至本地存储地址的数据库,生成对应的新存储地址;

将原存储地址更换为新存储地址。

本发明采用的另一技术方案为:

一种图片自动存储的系统,包括:接收模块、获取模块、判断模块和更换模块;

接收模块,用于富文本编辑器的编辑框接收到输入数据,判断所述输入数据中是否含有图片数据;

获取模块,用于若所述输入数据中含有图片数据,则获取所述图片数据对应的原存储地址;

判断模块,用于判断获取到的原存储地址是否为非本地存储地址,若是,则服务端根据所述原存储地址下载对应图片数据,存储至本地存储地址的数据库,生成对应的新存储地址;

更换模块,用于将原存储地址更换为新存储地址。

本发明的有益效果在于:

本发明提供的一种图片自动存储的方法及系统,在用户通过富文本编辑器浏览时,判断富文本编辑器的编辑框内接收到的输入数据中是否含有图片数据,若是,则获取图片数据对应的原存储地址并判断原存储地址是否为非本地存储地址,即用来判断该图片数据是否存储在第三方服务器,如果是,服务端就自动下载该图片数据并存储到本地存储地址的数据库,无需人工操作,并且将原存储地址更换为新存储地址存储,此时用户再次浏览该图片数据时,由于该图片数据在本地数据库中有存储,即使第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据时,可通过本地数据库实现浏览图片数据,确保图片数据资源的稳定性。

附图说明

图1为本发明的图片自动存储的方法的步骤流程图;

图2为本发明的图片自动存储的系统的结构示意图;

图3为本发明实施例的图片自动存储的方法的步骤流程图;

标号说明:

1、接收模块;2、获取模块;3、判断模块;4、更换模块。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:在用户通过富文本编辑器浏览时,判断富文本编辑器的编辑框内接收到的输入数据中含有图片数据是否存储在本地数据库,如果不是,自动下载图片数据并存储到本地数据库。

请参照图1,本发明提供的一种图片自动存储的方法,包括:

富文本编辑器的编辑框接收到输入数据,判断所述输入数据中是否含有图片数据;

若是,则获取所述图片数据对应的原存储地址;

判断获取到的原存储地址是否为非本地存储地址,若是,则服务端根据所述原存储地址下载对应图片数据,存储至本地存储地址的数据库,生成对应的新存储地址;

将原存储地址更换为新存储地址。

本发明的有益效果在于:

本发明提供的一种图片自动存储的方法,在用户通过富文本编辑器浏览时,判断富文本编辑器的编辑框内接收到的输入数据中是否含有图片数据,若是,则获取图片数据对应的原存储地址并判断原存储地址是否为非本地存储地址,即用来判断该图片数据是否存储在第三方服务器,如果是,服务端就自动下载该图片数据并存储到本地存储地址的数据库,无需人工操作,并且将原存储地址更换为新存储地址存储,此时用户再次浏览该图片数据时,由于该图片数据在本地数据库中有存储,即使第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据时,可通过本地数据库实现浏览图片数据,确保图片数据资源的稳定性。

进一步的,富文本编辑器的编辑框接收到输入数据,判断所述输入数据中是否含有图片数据,具体为:

在富文本编辑器上预设用于监听富文本编辑器的编辑框内是否有内容改变的监听事件;富文本编辑器的编辑框接收到输入数据,监听事件监听所述富文本编辑器的编辑框内是否有内容改变,若是,则判断所述输入数据中是否含有图片数据。

由上述描述可知,在上述实施方式中,通过监听事件来监听所述富文本编辑器的编辑框内是否有内容改变,内容改变具体包括数据量的增加或减少,即通过对比当前数据量与前一时刻数据量是否发生变化来判断,因此监听事件会间隔预设时长获取编辑框内的数据量,相邻两次数据量进行对比,从而判断富文本编辑器的编辑框内是否有内容改变。

进一步的,判断获取到的原存储地址是否为非本地存储地址的判断方法为:

在富文本编辑器上预设存储列表,用于存储图片数据以及其对应的本地存储地址的对应关系;

查询存储列表,判断存储列表内是否存储有所述原存储地址,若否,则所述原存储地址为非本地存储地址。

由上述描述可知,在上述实施方式中,通过查询存储列表来判断获取到的图片数据是否为本地存储,如果本地数据库中没有存储有该图片数据,则当用户再次浏览该图片数据时,就会因为第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据,因此当判定该图片数据为非本地存储(即为只存储在第三方服务器,且本地数据库未存储)时,将图片数据下载存储在本地数据库,从而确保用户浏览该图片数据的稳定性。

进一步的,将原存储地址更换为新存储地址,具体为:

将原存储地址更换为新存储地址,在存储列表内存储所述图片数据以及其对应的新存储地址的对应关系。

由上述描述可知,在上述实施方式中,当更换原存储地址为新存储地址时,就在存储列表内存储其对应关系,便于后续再次浏览时,只需通过存储列表即可判断图片数据是否存在本地存储。

进一步的,还包括预设CDN,用于存储具有本地存储地址的图片数据的数据库。

由上述描述可知,在上述实施方式中,CDN作为用于存储具有本地存储地址的图片数据的数据库,服务端根据所述原存储地址下载对应图片数据,将该图片数据存储在CDN中,CDN会自动生成对应的新存储地址,反馈给存储列表更新存储信息,即为将原存储地址更换为新存储地址存储。

参阅图2,本发明还提供的一种图片自动存储的系统,包括:接收模块1、获取模块2、判断模块3和更换模块4;

接收模块1,用于富文本编辑器的编辑框接收到输入数据,判断所述输入数据中是否含有图片数据;

获取模块2,用于若所述输入数据中含有图片数据,则获取所述图片数据对应的原存储地址;

判断模块3,用于判断获取到的原存储地址是否为非本地存储地址,若是,则服务端根据所述原存储地址下载对应图片数据,存储至本地存储地址的数据库,生成对应的新存储地址;

更换模块4,用于将原存储地址更换为新存储地址。

本发明提供的一种图片自动存储的系统,在用户通过富文本编辑器浏览时,判断富文本编辑器的编辑框内接收到的输入数据中是否含有图片数据,若是,则获取图片数据对应的原存储地址并判断原存储地址是否为非本地存储地址,即用来判断该图片数据是否存储在第三方服务器,如果是,服务端就自动下载该图片数据并存储到本地存储地址的数据库,无需人工操作,并且将原存储地址更换为新存储地址存储,此时用户再次浏览该图片数据时,由于该图片数据在本地数据库中有存储,即使第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据时,可通过本地数据库实现浏览图片数据,确保图片数据资源的稳定性。

进一步的,所述获取模块,还用于在富文本编辑器上预设用于监听富文本编辑器的编辑框内是否有内容改变的监听事件;富文本编辑器的编辑框接收到输入数据,监听事件监听所述富文本编辑器的编辑框内是否有内容改变,若是,则判断所述输入数据中是否含有图片数据。

由上述描述可知,在上述实施方式中,通过监听事件来监听所述富文本编辑器的编辑框内是否有内容改变,内容改变具体包括数据量的增加或减少,即通过对比当前数据量与前一时刻数据量是否发生变化来判断,因此监听事件会间隔预设时长获取编辑框内的数据量,相邻两次数据量进行对比,从而判断富文本编辑器的编辑框内是否有内容改变。

进一步的,所述判断模块,还用于在富文本编辑器上预设存储列表,用于存储图片数据以及其对应的本地存储地址的对应关系;

查询存储列表,判断存储列表内是否存储有所述原存储地址,若否,则所述原存储地址为非本地存储地址。

由上述描述可知,在上述实施方式中,通过查询存储列表来判断获取到的图片数据是否为本地存储,如果本地数据库中没有存储有该图片数据,则当用户再次浏览该图片数据时,就会因为第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据,因此当判定该图片数据为非本地存储(即为只存储在第三方服务器,且本地数据库未存储)时,将图片数据下载存储在本地数据库,从而确保用户浏览该图片数据的稳定性。

进一步的,所述更换模块,还用于将原存储地址更换为新存储地址,在存储列表内存储所述图片数据以及其对应的新存储地址的对应关系。

由上述描述可知,在上述实施方式中,当更换原存储地址为新存储地址时,就在存储列表内存储其对应关系,便于后续再次浏览时,只需通过存储列表即可判断图片数据是否存在本地存储。

进一步的,还包括预设模块,用于预设CDN,所述CDN为用于存储具有本地存储地址的图片数据的数据库。

由上述描述可知,在上述实施方式中,CDN作为用于存储具有本地存储地址的图片数据的数据库,服务端根据所述原存储地址下载对应图片数据,将该图片数据存储在CDN中,CDN会自动生成对应的新存储地址,反馈给存储列表更新存储信息,即为将原存储地址更换为新存储地址存储。

请参照图1-3,本发明的实施例一为:

本发明提供的一种图片自动存储的方法,包括:

步骤1、预设CDN,用于存储具有本地存储地址的图片数据的数据库。CDN作为用于存储具有本地存储地址的图片数据的数据库,服务端根据所述原存储地址下载对应图片数据,将该图片数据存储在CDN中,CDN会自动生成对应的新存储地址,反馈给存储列表更新存储信息,即为将原存储地址更换为新存储地址存储。

步骤2、富文本编辑器的编辑框接收到输入数据,判断所述输入数据中是否含有图片数据;具体为:

在富文本编辑器上预设用于监听富文本编辑器的编辑框内是否有内容改变的监听事件;富文本编辑器的编辑框接收到输入数据,监听事件监听所述富文本编辑器的编辑框内是否有内容改变,若是,则判断所述输入数据中是否含有图片数据。

在本实施方式中,在富文本编辑器上添加编辑器内容改变监听事件,该监听事件用来监听所述富文本编辑器的编辑框内是否有内容改变,一旦监听到富文本编辑器的编辑框内容发生改变,通过监听事件触发检测富文本编辑器的编辑框中是否存在未上传到CDN的图片数据(即为非本地存储的图片数据)。内容改变具体包括数据量的增加或减少,即通过对比当前数据量与前一时刻数据量是否发生变化来判断,因此监听事件会间隔预设时长获取编辑框内的数据量,相邻两次数据量进行对比,从而判断富文本编辑器的编辑框内是否有内容改变。

步骤3、若是,则获取所述图片数据对应的原存储地址;

在本实施方式中,只要编辑器内有图片数据,就都获取该图片数据对应的原存储地址,以便后续判断该图片数据是否为非本地存储。

步骤4、判断获取到的原存储地址是否为非本地存储地址,若是,则服务端根据所述原存储地址下载对应图片数据,存储至本地存储地址的数据库,生成对应的新存储地址;

其中判断获取到的原存储地址是否为非本地存储地址的判断方法为:

在富文本编辑器上预设存储列表,用于存储图片数据以及其对应的本地存储地址的对应关系;

查询存储列表,判断存储列表内是否存储有所述原存储地址,若否,则所述原存储地址为非本地存储地址。

在本实施方式中,如果存在未上传到CDN的图片则在监听事件中调用服务端接口,上传图片对应的URI链接。服务端进行图片的下载,保存到CDN,并返回图片新链接到监听事件。通过查询存储列表来判断获取到的图片数据是否为本地存储,如果本地数据库中没有存储有该图片数据,则当用户再次浏览该图片数据时,就会因为第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据,因此当判定该图片数据为非本地存储(即为只存储在第三方服务器,且本地数据库未存储)时,将图片数据下载存储在本地数据库,从而确保用户浏览该图片数据的稳定性。

步骤5、将原存储地址更换为新存储地址。具体为:

将原存储地址更换为新存储地址,在存储列表内存储所述图片数据以及其对应的新存储地址的对应关系。

由上述描述可知,在上述实施方式中,在监听事件中,将富文本编辑器中上传的图片URI链接替换为服务端返回的CDN图片链接,即为当更换原存储地址为新存储地址时,就在存储列表内存储其对应关系,便于后续再次浏览时,只需通过存储列表即可判断图片数据是否存在本地存储。

综上所述,本发明提供的一种图片自动存储的方法及系统,在用户通过富文本编辑器浏览时,判断富文本编辑器的编辑框内接收到的输入数据中是否含有图片数据,若是,则获取图片数据对应的原存储地址并判断原存储地址是否为非本地存储地址,即用来判断该图片数据是否存储在第三方服务器,如果是,服务端就自动下载该图片数据并存储到本地存储地址的数据库,无需人工操作,并且将原存储地址更换为新存储地址存储,此时用户再次浏览该图片数据时,由于该图片数据在本地数据库中有存储,即使第三方服务器发生宕机或者之后设置图片防盗链而不能获取图片数据时,可通过本地数据库实现浏览图片数据,确保图片数据资源的稳定性。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1