一种针对浏览器的调试方法及装置制造方法

文档序号:6549742阅读:200来源:国知局
一种针对浏览器的调试方法及装置制造方法
【专利摘要】本发明实施例公开了一种针对浏览器的调试方法及装置,涉及计算机【技术领域】,包括:在终端渲染目标网页失败的情况下,终端与调试设备建立通信连接,其中,终端与调试设备通过数据线连接;向调试设备发送目标网页的源代码;接收调试设备发送的目标网页修改后的源代码;根据目标网页修改后的源代码,渲染目标网页;如果目标网页渲染成功,根据对目标网页源代码所做的修改,确定浏览器中与目标网页不兼容的参数;在浏览器的源代码中,对上述与目标网页不兼容的参数进行修改。应用本发明实施例提供的方法进行调试时,无需在浏览器的调试界面和网页展示界面切换,提高了浏览器调试效率,利于软件开发人员解决问题。
【专利说明】一种针对浏览器的调试方法及装置
【技术领域】
[0001]本发明涉及计算机【技术领域】,特别涉及一种针对浏览器的调试方法及装置。
【背景技术】
[0002]由于实际应用中并不是所有网页均是按照网页编写标准编写的,所以用户在通过浏览器访问网页的过程中,可能会出现显示错误等问题。为了提高浏览器的健壮性和兼容性,软件开发人员需分析所出现的问题,找到出现问题的原因,进而改进浏览器。
[0003]现有技术中,在移动终端中查找浏览器出现问题的原因时,需先在移动终端浏览器的调试界面中修改出现问题的网页的源代码,再在该移动终端浏览器的网页展示界面中展示修改后的网页,并检查所展示的网页是否还存在问题,如此反复,直到找到浏览器出现问题的原因并解决问题。由以上可见,应用现有技术进行浏览器调试时,需频繁在调试界面和网页展示界面切换,效率较低,不利于软件开发人员解决问题。

【发明内容】

[0004]本发明实施例公开了一种针对浏览器的调试方法及装置,以提高浏览器调试效率,便于软件开发人员解决问题。
[0005]为达到上述目的,本发明实施例公开了一种针对浏览器的调试方法,所述方法包括:
[0006]在终端渲染目标网页失败的情况下,所述终端与调试设备建立通信连接,其中,所述终端与所述调试设备通过数据线连接;
[0007]通过所述通信连接,向所述调试设备发送所述目标网页的源代码;
[0008]通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码;
[0009]根据所述目标网页修改后的源代码,渲染所述目标网页;
[0010]如果所述目标网页渲染成功,根据对所述目标网页源代码所做的修改,确定浏览器中与所述目标网页不兼容的参数;
[0011]在浏览器的源代码中,对上述与所述目标网页不兼容的参数进行修改。
[0012]可选的,所述在终端渲染目标网页失败的情况下,所述终端与所述调试设备建立通信连接,包括:
[0013]在终端渲染目标网页失败的情况下,所述终端通过第一预设端口接收来自所述调试设备中第二预设端口的通信连接请求;
[0014]根据所述通信连接请求,建立所述第一预设端口与所述第二预设端口之间的通信连接。
[0015]可选的,所述第一预设端口,是与所述第二预设端口的端口号相同的端口。
[0016]可选的,所述通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码,包括:
[0017]通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的所有源代码;
[0018]所述根据所述目标网页修改后的源代码,渲染所述目标网页,包括:
[0019]将所述目标网页的所有源代码替换为修改后的所有源代码;
[0020]根据修改后的源代码,渲染所述目标网页。
[0021]可选的,所述通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码,包括:
[0022]通过所述通信连接,接收所述调试设备发送的所述目标网页中渲染失败的元素对应的修改后的源代码以及渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息;
[0023]所述根据所述目标网页修改后的源代码,渲染所述目标网页,包括:
[0024]根据渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息,确定渲染失败的元素对应的源代码在所述目标网页的源代码中的起始位置和结束位置;
[0025]将所述起始位置和结束位置之间的源代码替换为渲染失败的元素对应的修改后的源代码;
[0026]根据所述目标网页修改后的源代码,渲染所述目标网页。
[0027]为达到上述目的,本发明实施例公开了一种针对浏览器的调试装置,所述装置包括:
[0028]通信连接建立模块,用于在终端渲染目标网页失败的情况下,所述终端与调试设备建立通信连接,其中,所述终端与所述调试设备通过数据线连接;
[0029]源代码发送模块,用于通过所述通信连接,向所述调试设备发送所述目标网页的源代码;
[0030]源代码接收模块,用于通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码;
[0031]网页渲染模块,用于根据所述目标网页修改后的源代码,渲染所述目标网页;
[0032]参数确定模块,用于在所述目标网页渲染成功的情况下,根据对所述目标网页源代码所做的修改,确定浏览器中与所述目标网页不兼容的参数;
[0033]浏览器修改模块,用于在浏览器的源代码中,对上述与所述目标网页不兼容的参数进行修改。
[0034]可选的,所述通信连接建立模块,包括:
[0035]连接请求接收子模块,用于在终端渲染目标网页失败的情况下,所述终端通过第一预设端口接收来自所述调试设备中第二预设端口的通信连接请求;
[0036]通信连接建立子模块,用于根据所述通信连接请求,建立所述第一预设端口与所述第二预设端口之间的通信连接。
[0037]可选的,所述第一预设端口,是与所述第二预设端口的端口号相同的端口。
[0038]可选的,所述源代码接收模块,具体用于通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的所有源代码;
[0039]所述网页渲染模块,包括:
[0040]第一源代码替换子模块,用于将所述目标网页的所有源代码替换为修改后的所有源代码;
[0041]第一网页渲染子模块,用于根据修改后的源代码,渲染所述目标网页。
[0042]可选的,所述源代码接收模块,具体用于通过所述通信连接,接收所述调试设备发送的所述目标网页中渲染失败的元素对应的修改后的源代码,以及渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息;
[0043]所述网页渲染模块,包括:
[0044]位置确定子模块,用于根据渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息,确定渲染失败的元素对应的源代码在所述目标网页的源代码中的起始位置和结束位置;
[0045]第二源代码替换子模块,用于将所述起始位置和结束位置之间的源代码替换为渲染失败的元素对应的修改后的源代码;
[0046]第二网页渲染子模块,用于根据所述目标网页修改后的源代码,渲染所述目标网页。
[0047]由以上可见,本发明实施例提供的方案中,通过数据线连接终端和调试设备,并在调试设备中进行目标网页源代码修改,当在调试设备中完成目标网页源代码修改后,将目标网页源代码数据发送至终端,这样用户可在终端中检查渲染修改后的目标网页是否还存在渲染错误,若不存在渲染错误,则根据对目标网页源代码的修改,确定浏览器中与目标网页不兼容的参数,并在浏览器源代码中,对上述参数进行修改。可见,应用本发明实施例提供的方法进行调试时,通过在调试设备中修改目标网页,而通过终端渲染修改后的目标网页,无需在浏览器的调试界面和网页展示界面切换,提高了浏览器调试效率,利于软件开发人员解决问题。
【专利附图】

【附图说明】
[0048]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0049]图1为本发明实施例提供的针对浏览器的调试方法的第一种流程示意图;
[0050]图2为本发明实施例提供的针对浏览器的调试方法的第二种流程示意图;
[0051]图3为本发明实施例提供的针对浏览器的调试方法的第三种流程示意图;
[0052]图4为本发明实施例提供的针对浏览器的调试装置的第一种结构示意图;
[0053]图5为本发明实施例提供的针对浏览器的调试装置的第二种结构示意图;
[0054]图6为本发明实施例提供的针对浏览器的调试装置的第三种结构示意图。
【具体实施方式】
[0055]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0056]当浏览器渲染某一网页出错时,开发人员需针对所出现的问题调试浏览器,以增强浏览器的兼容性和健壮性,为此,本发明实施例提供了一种针对浏览器的调试方法,应用该方法进行调试时,开发人员通过在调试设备修改目标网页的源代码,至终端能够正确渲染该网页,来确定浏览器存在的问题,进而调试浏览器。
[0057]下面通过具体实施例对本发明进行详细介绍。
[0058]图1为本发明实施例提供的针对浏览器的调试方法的第一种流程示意图,该方法包括:
[0059]SlOl:在终端渲染目标网页失败的情况下,终端与调试设备建立通信连接。
[0060]其中,终端与调试设备通过数据线连接。
[0061]在本发明的实施例中,上述目标网页渲染失败,可以是目标网页中的至少一个元素没有渲染成功。例如,目标网页中的图片渲染失败、目标网页的排版格式错误等等。
[0062]具体的,上述终端可以是手机、平板电脑等移动终端;调试设备可以是计算机,当然也可以是手机、平板电脑等等,本申请并不对调试设备的具体形式进行限定。
[0063]在调试目标终端与调试设备通过数据线(例如,USB (Universal Serial Bus)数据线、串口数据线等等)建立物理连接后,还需在两者之间建立通信连接。
[0064]实际应用过程中,终端可以监测其中的第一预设端口,当监测到第一预设端口接收到来自调试设备的第二预设端口的通信连接请求后,建立第一预设端口与第二预设端口之间的通信连接。
[0065]具体的,第一预设端口,可以是与第二预设端口的端口号不相同的端口,也可以是与第二预设端口的端口号相同的端口。
[0066]需要说明的是,实际应用中,也可以是调试设备监测其中的第二预设端口,当监测到第二预设端口接收到来自终端的第一预设端口的通信连接请求后,建立第一预设端口与第二预设端口之间的通信连接。
[0067]S102:通过上述通信连接,向调试设备发送目标网页的源代码。
[0068]S103:通过上述通信连接,接收调试设备发送的目标网页修改后的源代码。
[0069]调试设备接收到目标网页的源代码后,开发人员可以在调试设备上进行调试操作,例如,根据终端渲染目标网页时出现问题的元素,在调试设备上查看并分析该元素对应的源代码,对该元素对应的源代码进行修改。
[0070]S104:根据目标网页修改后的源代码,渲染目标网页。
[0071]可选的,在本发明的另一个具体实施例中,参见图2,上述通过所述通信连接,接收调试设备发送的目标网页修改后的源代码(S103),可以包括:
[0072]S103A:通过所述通信连接,接收调试设备发送的目标网页修改后的所有源代码。
[0073]上述根据目标网页修改后的源代码,渲染目标网页(S104),可以包括:
[0074]S104A:将目标网页的所有源代码替换为修改后的所有源代码。
[0075]S104B:根据修改后的源代码,渲染目标网页。
[0076]可选的,在本发明的又一个具体实施例中,参见图3,上述通过所述通信连接,接收调试设备发送的目标网页修改后的源代码(S103),可以包括:
[0077]S103B:通过所述通信连接,接收调试设备发送的目标网页中渲染失败的元素对应的修改后的源代码,以及渲染失败的元素对应的修改后的源代码在目标网页的源代码中的位置信息。
[0078]上述根据目标网页修改后的源代码,渲染目标网页(S104),可以包括:
[0079]S104C:根据渲染失败的元素对应的修改后的源代码在目标网页的源代码中的位置信息,确定渲染失败的元素对应的源代码在目标网页的源代码中的起始位置和结束位置。
[0080]S104D:将起始位置和结束位置之间的源代码替换为渲染失败的元素对应的修改后的源代码。
[0081]S104E:根据目标网页修改后的源代码,渲染目标网页。
[0082]终端根据目标网页修改后的源代码,渲染该目标网页;若该目标网页还存在问题,则可以重复S102至S104,开发人员可以继续在调试设备中修改目标网页的源代码,直到在终端上能成功渲染所述目标网页。
[0083]S105:如果目标网页渲染成功,根据对目标网页源代码所做的修改,确定浏览器中与目标网页不兼容的参数。
[0084]在本实施例的一种具体应用中,假设将目标网页源代码中的参数A的取值由50修改为60后,终端能够成功渲染该目标网页,其中,浏览器的源代码中设定的参数A的取值范围为[55,70],则可以判定浏览器与目标网页源代码中的参数A的原取值(50)不兼容。
[0085]S106:在浏览器的源代码中,对上述与目标网页不兼容的参数进行修改。
[0086]参照S105给出的具体应用,由于目标网页的源代码中的参数A的取值不属于浏览器的源代码中设定的参数A的取值范围,则为了增强浏览器的兼容性,可扩大浏览器的源代码中参数A的取值范围,例如,将A的取值范围修改为[50,70],以解决终端渲染目标网页失败的问题。
[0087]由以上可见,本发明实施例提供的方案中,通过数据线连接终端和调试设备,并在调试设备中进行目标网页源代码修改,当在调试设备中完成目标网页源代码修改后,将目标网页源代码数据发送至终端,这样用户可在终端中检查渲染修改后的目标网页是否还存在渲染错误,若不存在渲染错误,则根据对目标网页源代码的修改,确定浏览器中与目标网页不兼容的参数,并在浏览器源代码中,对上述参数进行修改。可见,应用本发明实施例提供的方法进行调试时,通过在调试设备修改目标网页,而通过终端渲染修改后的目标网页,无需在浏览器的调试界面和网页展示界面切换,提高了浏览器调试效率,利于软件开发人员解决问题。
[0088]图4为本发明实施例提供的针对浏览器的调试装置的第一种结构示意图,该装置包括:通信连接建立模块401、源代码发送模块402、源代码接收模块403、网页渲染模块404、参数确定模块405和浏览器修改模块406。
[0089]其中,通信连接建立模块401,用于在终端渲染目标网页失败的情况下,所述终端与调试设备建立通信连接,其中,所述终端与所述调试设备通过数据线连接;
[0090]源代码发送模块402,用于通过所述通信连接,向所述调试设备发送所述目标网页的源代码;
[0091]源代码接收模块403,用于通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码;
[0092]网页渲染模块404,用于根据所述目标网页修改后的源代码,渲染所述目标网页;[0093]参数确定模块405,用于在所述目标网页渲染成功的情况下,根据对所述目标网页源代码所做的修改,确定浏览器中与所述目标网页不兼容的参数;
[0094]浏览器修改模块406,用于在浏览器的源代码中,对上述与所述目标网页不兼容的参数进行修改。
[0095]具体的,通信连接建立模块401,可以包括:连接请求接收子模块和通信连接建立子模块(图中未不出)。
[0096]其中,连接请求接收子模块,用于在终端渲染目标网页失败的情况下,所述终端通过第一预设端口接收来自所述调试设备中第二预设端口的通信连接请求;通信连接建立子模块,用于根据所述通信连接请求,建立所述第一预设端口与所述第二预设端口之间的通信连接。
[0097]较佳的,第一预设端口,可以是与第二预设端口的端口号相同的端口。
[0098]可选的,在本发明的另一个具体实施例中,参见图5,提供了一种针对浏览器的调试装置的具体结构示意图,与上述实施例相比,本实施例中,
[0099]源代码接收模块403,具体用于通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的所有源代码。
[0100]网页渲染模块404,包括:第一源代码替换子模块4041和第一网页渲染子模块4042。
[0101]其中,第一源代码替换子模块4041,用于将所述目标网页的所有源代码替换为修改后的所有源代码;
[0102]第一网页渲染子模块4042,用于根据修改后的源代码,渲染所述目标网页。
[0103]可选的,在本发明的又一个具体实施例中,参见图6,提供了另一种针对浏览器的调试装置的具体结构示意图,与上述实施例相比,本实施例中,
[0104]源代码接收模块403,具体用于通过所述通信连接,接收所述调试设备发送的所述目标网页中渲染失败的元素对应的修改后的源代码,以及渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息。
[0105]网页渲染模块404,包括:位置确定子模块4043、第二源代码替换子模块4044和第二网页渲染子模块4045。
[0106]其中,位置确定子模块4043,用于根据渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息,确定渲染失败的元素对应的源代码在所述目标网页的源代码中的起始位置和结束位置;
[0107]第二源代码替换子模块4044,用于将所述起始位置和结束位置之间的源代码替换为渲染失败的元素对应的修改后的源代码;
[0108]第二网页渲染子模块4045,用于根据所述目标网页修改后的源代码,渲染所述目标网页。
[0109]由以上可见,本发明实施例提供的方案中,通过数据线连接终端和调试设备,并在调试设备中进行目标网页源代码修改,当在调试设备中完成目标网页源代码修改后,将目标网页源代码数据发送至终端,这样用户可在终端中检查渲染修改后的目标网页是否还存在渲染错误,若不存在渲染错误,则根据对目标网页源代码的修改,确定浏览器中与目标网页不兼容的参数,并在浏览器源代码中,对上述参数进行修改。可见,应用本发明实施例提供的方法进行调试时,通过在调试设备修改目标网页,而通过终端渲染修改后的目标网页,无需在浏览器的调试界面和网页展示界面切换,提高了浏览器调试效率,利于软件开发人员解决问题。
[0110]对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0111]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0112]本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:R0M/RAM、磁碟、光盘等。
[0113]以上所述仅 为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
【权利要求】
1.一种针对浏览器的调试方法,其特征在于,所述方法包括: 在终端渲染目标网页失败的情况下,所述终端与调试设备建立通信连接,其中,所述终端与所述调试设备通过数据线连接; 通过所述通信连接,向所述调试设备发送所述目标网页的源代码; 通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码; 根据所述目标网页修改后的源代码,渲染所述目标网页; 如果所述目标网页渲染成功,根据对所述目标网页源代码所做的修改,确定浏览器中与所述目标网页不兼容的参数; 在浏览器的源代码中,对上述与所述目标网页不兼容的参数进行修改。
2.根据权利要求1所述的方法,其特征在于,所述在终端渲染目标网页失败的情况下,所述终端与所述调试设备建立通信连接,包括: 在终端渲染目标网页失败的情况下,所述终端通过第一预设端口接收来自所述调试设备中第二预设端 口的通信连接请求; 根据所述通信连接请求,建立所述第一预设端口与所述第二预设端口之间的通信连接。
3.根据权利要求2所述的方法,其特征在于,所述第一预设端口,是与所述第二预设端口的端口号相同的端口。
4.根据权利要求1-3中任一项所述的方法,其特征在于, 所述通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码,包括: 通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的所有源代码; 所述根据所述目标网页修改后的源代码,渲染所述目标网页,包括: 将所述目标网页的所有源代码替换为修改后的所有源代码; 根据修改后的源代码,渲染所述目标网页。
5.根据权利要求1-3中任一项所述的方法,其特征在于, 所述通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码,包括: 通过所述通信连接,接收所述调试设备发送的所述目标网页中渲染失败的元素对应的修改后的源代码,以及渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息; 所述根据所述目标网页修改后的源代码,渲染所述目标网页,包括: 根据渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息,确定渲染失败的元素对应的源代码在所述目标网页的源代码中的起始位置和结束位置;将所述起始位置和结束位置之间的源代码替换为渲染失败的元素对应的修改后的源代码; 根据所述目标网页修改后的源代码,渲染所述目标网页。
6.一种针对浏览器的调试装置,其特征在于,所述装置包括: 通信连接建立模块,用于在终端渲染目标网页失败的情况下,所述终端与调试设备建立通信连接,其中,所述终端与所述调试设备通过数据线连接;源代码发送模块,用于通过所述通信连接,向所述调试设备发送所述目标网页的源代码; 源代码接收模块,用于通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的源代码; 网页渲染模块,用于根据所述目标网页修改后的源代码,渲染所述目标网页; 参数确定模块,用于在所述目标网页渲染成功的情况下,根据对所述目标网页源代码所做的修改,确定浏览器中与所述目标网页不兼容的参数; 浏览器修改模块,用于在浏览器的源代码中,对上述与所述目标网页不兼容的参数进行修改。
7.根据权利要求6所述的装置,其特征在于,所述通信连接建立模块,包括: 连接请求接收子模块,用于在终端渲染目标网页失败的情况下,所述终端通过第一预设端口接收来自所述调试设备中第二预设端口的通信连接请求; 通信连接建立子模块,用于根据所述通信连接请求,建立所述第一预设端口与所述第二预设端口之间的通信连接。
8.根据权利要求7所述的装置,其特征在于,所述第一预设端口,是与所述第二预设端口的端口号相同的 端口。
9.根据权利要求6-8中任一项所述的装置,其特征在于, 所述源代码接收模块,具体用于通过所述通信连接,接收所述调试设备发送的所述目标网页修改后的所有源代码; 所述网页渲染模块,包括: 第一源代码替换子模块,用于将所述目标网页的所有源代码替换为修改后的所有源代码; 第一网页渲染子模块,用于根据修改后的源代码,渲染所述目标网页。
10.根据权利要求6-8中任一项所述的装置,其特征在于, 所述源代码接收模块,具体用于通过所述通信连接,接收所述调试设备发送的所述目标网页中渲染失败的元素对应的修改后的源代码,以及渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息; 所述网页渲染模块,包括: 位置确定子模块,用于根据渲染失败的元素对应的修改后的源代码在所述目标网页的源代码中的位置信息,确定渲染失败的元素对应的源代码在所述目标网页的源代码中的起始位置和结束位置; 第二源代码替换子模块,用于将所述起始位置和结束位置之间的源代码替换为渲染失败的元素对应的修改后的源代码; 第二网页渲染子模块,用于根据所述目标网页修改后的源代码,渲染所述目标网页。
【文档编号】G06F11/36GK104021081SQ201410267066
【公开日】2014年9月3日 申请日期:2014年6月16日 优先权日:2014年6月16日
【发明者】刘阳, 关翔 申请人:贝壳网际(北京)安全技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1