CN109451058A - 一种跨域json数据交换方法和系统 - Google Patents

一种跨域json数据交换方法和系统 Download PDF

Info

Publication number
CN109451058A
CN109451058A CN201811571313.7A CN201811571313A CN109451058A CN 109451058 A CN109451058 A CN 109451058A CN 201811571313 A CN201811571313 A CN 201811571313A CN 109451058 A CN109451058 A CN 109451058A
Authority
CN
China
Prior art keywords
data
json
request
transponder
cross
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811571313.7A
Other languages
English (en)
Inventor
张力
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changzhou Vocational Institute of Mechatronic Technology
Original Assignee
Changzhou Vocational Institute of Mechatronic Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Changzhou Vocational Institute of Mechatronic Technology filed Critical Changzhou Vocational Institute of Mechatronic Technology
Priority to CN201811571313.7A priority Critical patent/CN109451058A/zh
Publication of CN109451058A publication Critical patent/CN109451058A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种跨域JSON数据交换方法和系统,具体包括以下步骤:接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对;重构所述目标键值对,形成第二JSON数据请求;发送所述第二JSON数据请求到跨域服务器;接收所述跨域服务器的响应。本发明提供的一种跨域JSON数据交换方法不仅可以在客户端和服务端均不需进行任何改造的情况下即可实现跨域JSON数据交换,免去客户端和服务器端重新设计、改造导致的繁琐工作量,降低了耦合性,提高了兼容性。而且,由于使用了缓存技术,在大数据交换和大并发流量请求时,可以显著提升访问速度和效率。再者,JSON数据交换有多种可选脚本语言实现,灵活性和自由度得到很大提升。

Description

一种跨域JSON数据交换方法和系统
技术领域
本发明涉及信息数据交换领域;特别地,涉及跨域JSON数据的交换方法和系统。
背景技术
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,也易于机器解析和生成。基于JavaScript Programming Language,StandardECMA-262 3rd Edition-December 1999的一个子集,JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯。这些特性使JSON成为理想的数据交换语言。
实际应用中,JSON数据格式大量被用于RESTFUL数据交换中,RESTFUL是一种软件架构,它主要表现为以下三种形式:(1)每一个URI代表一种资源;(2)客户端和服务器之间,传递这种资源的某种表现层;(3)客户端通过HTTP请求,对服务器端资源进行操作,实现“表现层状态转化”。RESTFUL架构运行的主体为客户端浏览器派生的JavaScript对象(XMLHttpRequest对象)和服务器端提供WebService的WEB服务器,而XMLHttpRequest广泛使用的数据格式就是JSON。
由于XMLHttpRequest对象基于JavaScript,使用上就不可避免遵循同源策略,同源策略是指JavaScript对象进行数据交换的主体必须和自身使用同一域名、同一协议、同一端口。简单的说就是必须和自己运行在同一主机下。如果对方不在同一主机,则必须使用非常特殊的技术处理而且对方必须修改服务器端程序代码方可实现,实现过程繁琐且双方都必须参与,增加了数据交换系统不同模块之间的耦合,降低了通用性和兼容性。
发明内容
本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,
本发明的第一个目的在于提出一种跨域JSON数据交换方法,不仅可以在客户端和服务端均不需进行任何改造的情况下即可实现跨域JSON数据交换,免去客户端和服务器端重新设计、改造导致的繁琐工作量,也不需要客户端和服务器端事先确定远程调用格式,降低了耦合性,提高了兼容性。而且,由于使用了缓存技术,在大数据交换和大并发流量请求时,可以显著提升访问速度和效率。再者,系统实现可以使用多种脚本,脚本语言灵活不受限制。
本发明的第二个目的在于提出一种跨域JSON数据交换系统,不仅可以在客户端和服务端均不需进行任何改造的情况下即可实现跨域JSON数据交换,免去客户端和服务器端重新设计、改造导致的繁琐工作量,也不需要客户端和服务器端事先确定远程调用格式,降低了耦合性,提高了兼容性。而且,由于使用了缓存技术,在大数据交换和大并发流量请求时,可以显著提升访问速度和效率。再者,系统实现可以使用多种脚本,脚本语言灵活不受限制。
为达到上述目的,本发明第一方面实施例提出跨域JSON数据交换的方法,该方法包括:接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对;重构所述目标键值对,形成第二JSON数据请求;发送所述第二JSON数据请求到跨域服务器;接收所述跨域服务器的响应。
优选地,所述重构所述目标键值结构包括:获取所述目标键值对中的目标键值,所述目标键值表征目标主机的地址信息;将所述目标键值构建为对所述跨域服务器的HTTP请求。
优选地,在所述接收所述跨域服务器的响应数据之后,还包括:解析所述响应获取地址键值对数据,如果所述地址键值对数据不为空,则暂存到缓存;转发携带所述地址键值对数据的请求到所述转发器。
优选地,在所述接收转发器转发的第一JSON数据请求之前,所述转发器接收客户端发送的第一JSON数据请求,并对所述方法键值对进行解析:解析结果为POST或PUT或DELETE,所述转发器转发所述第一JSON数据请求;或者解析结果为GET,所述转发器检查缓存。
优选地,所述客户端发送的第一JSON数据请求,是客户端XMLHttpRequest对象发起的RESTFUL请求。
优选地,所述转发器检查缓存包括:查询所述缓存中是否存在地址键值对,如果存在,所述转发器基于所述地址键值对构建第一JSON数据响应并发送给客户端。
优选地,所述缓存格式为哈希表,所述哈希表由地址键值对构成。
优选地,所述地址键值对为统一资源定位键值对。
优选地,所述JSON数据交换由部署到JavaScript脚本同源位置的可选脚本语言实现。
优选地,所述可选脚本语言包括Java、PHP、Python、Node.js中的一种。
为达到上述目的,本发明第二方面实施例提出了跨域JSON数据交换系统,该系统包括:发送器,所述发送器包括请求接收单元,用于接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对,重构单元,用于重构所述目标键值对,形成第二JSON数据请求,请求发送单元,用于发送所述第二JSON数据请求到跨域服务器,以及响应接收单元,用于接收所述跨域服务器的响应;以及转发器,所述转发器向所述发送器转发所述第一JSON数据请求。
优选地,所述重构单元包括:目标键值获取单元,用于获取所述目标键值对中的目标键值,所述目标键值表征目标主机的地址信息;目标键值构建单元,用于将所述将所述目标键值构建为对所述跨域服务器的HTTP请求。
优选地,所述跨域JSON数据交换系统还包括:缓存暂存单元,用于在所述接收所述跨域服务器的响应之后,解析所述响应获取地址键值对数据,如果所述地址键值对数据不为空,则暂存到缓存;请求转发单元,用于转发携带所述地址键值对数据的请求到所述转发器。
优选地,所述跨域JSON数据交换系统还包括:解析单元,用于在所述接收转发器转发的第一JSON数据请求之前,所述转发器接收客户端发送的第一JSON数据请求,并对所述方法键值对进行解析:解析结果为POST或PUT或DELETE,所述转发器转发所述第一JSON数据请求;或者解析结果为GET,所述转发器检查缓存。
优选地,所述检查缓存包括:查询所述缓存中是否存在地址键值对,如果存在,所述转发器基于所述地址键值对构建第一JSON数据响应并发送给客户端。
优选地,所述缓存格式为哈希表,所述哈希表由地址键值对构成。
优选地,所述地址键值对为统一资源定位键值对。
优选地,所述JSON数据交换由部署到JavaScript脚本同源位置的可选脚本语言实现。
优选地,所述可选脚本语言包括Java、PHP、Python、Node.js中的一种。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过对本发明的实践了解到。
附图说明
图1为根据本发明实施例的跨域JSON数据交换方法的流程示意图;
图2为根据本发明实施例的跨域JSON数据交换系统的方框示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面结合附图来描述本发明实施例的跨域JSON数据交换方法和系统。
请参阅图1,为本发明实施例提供的JSON数据交换方法,包括以下步骤:
S1,接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对。
本发明实施例的JSON数据,是一种以键值对格式构建的数据,其格式可以表示为:“键名”:“键值”。第一JSON数据请求,是按照JSON格式构建的数据所对应的请求,例如,第一JSON数据为:
{"Target":"URI","Method":"x","Object":[{"k11":"v11","k12":"v12",...},{"k21":"v21","k22":"v22",...}...]},其中Target为目标键名,URI为与Target目标键名对应的目标键值,Target和URI构成了目标键值对;类似的,Method和x构成了方法键值对;Object和[{"k11":"v11","k12":"v12",...},{"k21":"v21","k22":"v22",...}...]构成了对象键值对,以此类推。
所述第一JSON数据请求,被发送器接收,并且该第一JSON数据至少包括方法键值对和目标键值对。应当理解,该第一JSON数据至少包括方法键名和与方法键名对应的方法键值,以及目标键名和与目标键名对应的目标键值。
仍然以
{"Target":"URI","Method","x","Object":[{"k11":"v11","k12":"v12",...},{"k21":"v21","k22":"v22",...}...]}为例,其中,URI为目标键值,表示真实请求的地址,x为方法键值,x的取值为["GET","POST","PUT","DELETE"]中的一种,Object为对象键名,表示对象交换数据,对象键名对应的对象键值在方法键名为POST、PUT或DELETE时有效,在Method为GET时可以缺省。
所述第一JSON数据应当至少包括Target-URI键值对和Method-x键值对。也就是说,在所述第一JSON数据请求中,Target-URI键值对和Method-x键值对是必不可少的。
所述第一JSON数据请求来源于转发器转发。应当理解,接收到的经转发器转发的所述第一JSON数据请求,至少应当包括方法键值对和目标键值对。
所述第一JSON数据请求为转发器转发的RESTFUL数据交换请求。RESTFUL是一种软件架构,它主要表现为以下三种形式:
每一个URI代表一种资源;
客户端和服务器之间,传递这种资源的某种表现层;
客户端通过HTTP请求,对服务器端资源进行操作,实现“表现层状态转化”。
RESTFUL架构运行的主体为客户端浏览器派生的JavaScript对象(XMLHttpRequest对象)和服务器端提供WebService的WEB服务器,而XMLHttpRequest广泛使用的数据格式就是JSON。
具体地,在所述发送器接收转发器转发的第一JSON数据请求之前,所述转发器接收客户端发送的第一JSON数据请求,并对所述方法键值对进行解析。
客户端进行跨域访问时,先生成XMLHttpRequest对象,之后在XMLHttpRequest对象的同源位置处向转发器发起RESTful请求。
所述转发器对所述第一JSON数据请求中的方法键值对进行解析,如果所述方法键值对的解析结果为{“Method”:”POST”}或{“Method”:”PUT”}或{“Method”:”DELETE”},所述转发器向所述发送器转发所述第一JSON数据请求。
如果所述方法键值对的解析结果为{“Method”:”GET”},所述转发器检查缓存。所述缓存是由转发器在内存中开辟的缓存区Cache,用于暂存从服务器端取得的JSON数据,以及在客户端发起跨域JSON数据交换请求时由转发器查询是否存在地址键值对信息。所述缓存的格式为{"url1":"content1","url2":"content2","url3":"content3",...}。
具体地,所述转发器检查缓存包括检查URI在缓存中是否存在对应的urlx的项,即是否存在{“urlx”:”contentx”}地址键值对,若有,直接取到urlx对应的contentx值,构建JSON响应返回客户端XMLHttpRequest对象,不用再向发送器转发JSON数据请求。由于使用了缓存技术,在大数据交换和大并发流量请求时,可以显著提升访问速度和效率。以一个GET请求为例,若请求被缓存命中,则可以减少1次HTTP请求,1次HTTP回应;减少网络流量至少为两个请求Header+返回data;降低一次请求和返回时间;在数据量和并发连接数比较大的情况下,流量和连接数的减少是非常显著的。
S2,重构所述目标键值对,形成第二JSON数据请求。
发送器接收来源于转发器发送的第一JSON数据请求后,重构所述第一JSON数据请求中的目标键值对,并将重构之后的JSON数据请求作为第二JSON数据请求,以便后续发送给跨域服务器等网络设备。所述目标键值对由目标键名和目标键值组成,应当理解,所述目标键值是一个实体结构,由多个要素组成,至少应当包括所要访问的目标主机(设备)的地址信息。
具体地,所述重构所述目标键值对包括:获取所述目标键值对中的目标键值,所述目标键值表征目标主机的地址信息;将所述目标键值构建为对所述跨域服务器的HTTP请求。获取所述目标键值对中的目标键值,就是获取到所要访问的目标设备(跨域服务器)的地址信息。
例如,获得到的目标键值对的目标键值为www.destination-device.com,相当于跨域服务器的地址,然后使用CURL框架构建实体HTTP请求,所述构建后的HTTP请求为HTTP://www.destination-device.com,从而构成第二JSON数据请求。所述第一JSON数据请求以
{"Target":"URI","Method","x","Object":[{"k11":"v11","k12":"v12",...},{"k21":"v21","k22":"v22",...}...]}为例,
发送器提取出所述第一JSON数据请求中的目标键值和方法键值,即URI和x的值,利用CURL框架重构对跨域服务器的HTTP请求,格式为JSON,内容即去除了目标键值对Target-URI以及方法键值对Method-x。
具体地,发送器先将{"Target":"URI","Method","x"}键值对取出,使用CURL框架构建对Target的http请求,Method为x,Object内容不变。由于该请求的发起者为发送器,是单独存在于操作系统中的一个进程,而非客户端的XMLHttpRequest对象,两者在操作系统中的拥有的权限不一样,发送器的HTTP请求可不遵循同源策略,从而实现跨域访问的目的,从而不仅可以在客户端和服务端均不需进行任何改造的情况下即可实现跨域JSON数据交换,免去客户端和服务器端重新设计、改造导致的繁琐工作量,也不需要客户端和服务器端事先确定远程调用格式,降低了耦合性,提高了兼容性。
基于CURL框架重构对所述第一JSON数据请求中的目标键值http请求,生成第二JSON数据请求,使得所述第二JSON数据请求满足跨域数据交换要求。
S3,发送所述第二JSON数据请求到跨域服务器。
所述第二JSON数据请求,是在所述第一JSON数据请求基础上,按照CURL框架对目标键值进行重构之后形成的。也就是说,所述第二JSON数据请求是为了满足跨域JSON数据请求和响应等数据交换要求而设计的。所述发送器向跨域服务器发送所述第二JSON数据请求,由于此时发送请求的主体不再是客户端的XMLHttpRequest对象而转变为发送器,两者不属于同源范畴,不受同源策略的约束,从而不仅可以在客户端和服务端均不需进行任何改造的情况下即可实现跨域JSON数据交换,免去客户端和服务器端重新设计、改造导致的繁琐工作量,也不需要客户端和服务器端事先确定远程调用格式,降低了耦合性,提高了兼容性。
S4,接收所述跨域服务器的响应。
所述发送器在向所述跨域服务器发送所述第二JSON数据请求之后,接收所述跨域服务器的响应,作为对所述第二JSON数据请求作出的回应。所述响应的格式为:
{"Object":[{"k11":"v11","k12":"v12",...},{"k21":"v21","k22":"v22"},...]}
具体地,在所述接收所述跨域服务器的响应数据之后,还包括:
S401,解析所述响应获取地址键值对数据,如果所述地址键值对数据不为空,则暂存到缓存。
发送器解析所述响应数据获取地址键值对数据,如果所述键值对数据不为空,所述发送器将所述键值对数据打包成{“urlx”:”contentx”}地址键值对的形式存入缓存,其中,“urlx”为所述地址键值对中的地址键值,“contentx”为所述地址键值对中的地址键值。例如将地址键值对数据打包为:
{"url1":[{"k11":"v11","k12":"v12",...},{"k21":"v21","k22":"v22"},...],”url2”:…,”url3”:…}
如果所述键值对数据为空,所述发送器不用暂存到缓存。
S402,转发携带所述地址键值对数据的请求到所述转发器。
所述发送器将S401中的响应数据转发到所述转发器,所述转发器再将所述响应数据返回XMLHttpRequest对象。
上述S1到S4过程中,所述JSON数据交换由部署到JavaScript脚本同源位置的可选脚本语言实现,所述可选脚本语言包括Java、PHP、Python、Node.js中的一种,从而使得脚本语言灵活不受限制,灵活性和自由度得到很大提升。
本实施例的技术方案,通过接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对;重构所述目标键值结构,形成第二JSON数据请求;发送所述第二JSON数据请求到跨域服务器;接收所述跨域服务器的响应的方法,可以在客户端和服务端均不需进行任何改造的情况下即可实现跨域JSON数据交换,免去客户端和服务器端重新设计、改造导致的繁琐工作量,也不需要客户端和服务器端事先确定远程调用格式,降低了耦合性,提高了兼容性。其次,由于使用了缓存技术,在大数据交换和大并发流量请求时,可以显著提升跨域JSON数据交换的速度和效率。再者,JSON数据交换有多种可选脚本语言实现,脚本语言灵活不受限制,灵活性和自由度得到很大提升。
请参阅图2,为本发明实施例提供的跨域JSON数据交换系统的结构示意图,所述跨域JSON数据交换系统包括:发送器210以及转发器220。其中,发送器210包括请求接收单元2101,用于接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对;重构单元2102,用于重构所述目标键值对,形成第二JSON数据请求;请求发送单元2103,用于发送所述第二JSON数据请求到跨域服务器;响应接收单元2104,用于接收所述跨域服务器的响应。转发器220向所述发送器转发所述第一JSON数据请求。
具体地,所述重构单元2102包括:目标键值获取单元,用于获取所述目标键值对中的目标键值,所述目标键值表征目标主机的地址信息;目标键值构建单元,用于用于将所述目标键值构建为对所述跨域服务器的HTTP请求。
具体地,所述跨域JSON数据交换系统还包括:缓存暂存单元,用于在所述接收所述跨域服务器的响应之后,解析所述响应获取地址键值对数据,如果所述地址键值对数据不为空,则暂存到缓存;请求转发单元,用于转发携带所述地址键值对数据的请求到所述转发器。
具体地,所述跨域JSON数据交换系统还包括:解析单元,用于在所述接收转发器转发的第一JSON数据请求之前,所述转发器接收客户端发送的第一JSON数据请求,并对所述方法键值对进行解析:解析结果为POST或PUT或DELETE,所述转发器转发所述第一JSON数据请求;或者解析结果为GET,所述转发器检查缓存。
具体地,所述检查缓存包括:查询所述缓存中是否存在所述地址键值对,如果存在,所述转发器基于所述地址键值对构建第一JSON数据响应并发送给客户端。
具体地,所述缓存格式为哈希表,所述哈希表由统一资源定位键值对构成。
具体地,所述发送器和/或所述转发器由部署到JavaScript脚本同源位置的可选脚本语言实现。所述可选脚本语言包括Java、PHP、Python、Node.js中的一种,从而使得脚本语言灵活不受限制,灵活性和自由度得到很大提升。
本发明实施例提供的跨域JSON数据交换系统可执行本发明任意实施例所提供的跨域JSON数据交换方法,具备执行方法相应的功能模块和有益效果。
本领域普通技术人员可以理解:实现上述各实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用于说明本发明的技术方案,而非对其进行限制;实施例中优选的实施方式,并非对其进行限制,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种跨域JSON数据交换方法,其特征在于,所述方法包括:
接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对;
重构所述目标键值对,形成第二JSON数据请求;
发送所述第二JSON数据请求到跨域服务器;
接收所述跨域服务器的响应。
2.如权利要求1所述的方法,其特征在于,所述重构所述目标键值对包括:
获取所述目标键值对中的目标键值,所述目标键值表征目标主机的地址信息;
将所述目标键值构建为对所述跨域服务器的HTTP请求。
3.如权利要求1所述的方法,其特征在于,在所述接收所述跨域服务器的响应数据之后,还包括:
解析所述响应获取地址键值对数据,如果所述地址键值对数据不为空,则暂存到缓存;
转发携带所述地址键值对数据的请求到所述转发器。
4.如权利要求1所述的方法,其特征在于,在所述接收转发器转发的第一JSON数据请求之前,所述转发器接收客户端发送的第一JSON数据请求,并对所述方法键值对进行解析:
解析结果为POST或PUT或DELETE,所述转发器转发所述第一JSON数据请求;或者解析结果为GET,所述转发器检查缓存。
5.如权利要求4所述的方法,其特征在于,所述转发器检查缓存包括:
查询所述缓存中是否存在地址键值对,如果存在,所述转发器基于所述地址键值对构建第一JSON数据响应并发送给客户端。
6.一种跨域JSON数据交换系统,其特征在于,所述系统包括:
发送器,所述发送器包括:
请求接收单元,用于接收转发器转发的第一JSON数据请求,所述第一JSON数据至少包括方法键值对和目标键值对,
重构单元,用于重构所述目标键值对,形成第二JSON数据请求,
请求发送单元,用于发送所述第二JSON数据请求到跨域服务器,以及
响应接收单元,用于接收所述跨域服务器的响应;以及
转发器,所述转发器向所述发送器转发所述第一JSON数据请求。
7.如权利要求6所述的系统,其特征在于,所述重构单元包括:
目标键值获取单元,用于获取所述目标键值对中的目标键值,所述目标键值表征目标主机的地址信息;
目标键值构建单元,用于将所述目标键值构建为对所述跨域服务器的HTTP请求。
8.如权利要求6所述的系统,其特征在于,所述系统还包括:
缓存暂存单元,用于在所述接收所述跨域服务器的响应之后,解析所述响应获取地址键值对数据,如果所述地址键值对数据不为空,则暂存到缓存;
请求转发单元,用于转发携带所述地址键值对数据的请求到所述转发器。
9.如权利要求6所述的系统,其特征在于,所述系统还包括:
解析单元,用于在所述接收转发器转发的第一JSON数据请求之前,所述转发器接收客户端发送的第一JSON数据请求,并对所述方法键值对进行解析:
解析结果为POST或PUT或DELETE,所述转发器转发所述第一JSON数据请求;或者解析结果为GET,所述转发器检查缓存。
10.如权利要求9所述的系统,其特征在于,所述检查缓存包括:
查询所述缓存中是否存在地址键值对,如果存在,所述转发器基于所述地址键值对构建第一JSON数据响应并发送给客户端。
CN201811571313.7A 2018-12-21 2018-12-21 一种跨域json数据交换方法和系统 Pending CN109451058A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811571313.7A CN109451058A (zh) 2018-12-21 2018-12-21 一种跨域json数据交换方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811571313.7A CN109451058A (zh) 2018-12-21 2018-12-21 一种跨域json数据交换方法和系统

Publications (1)

Publication Number Publication Date
CN109451058A true CN109451058A (zh) 2019-03-08

Family

ID=65534727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811571313.7A Pending CN109451058A (zh) 2018-12-21 2018-12-21 一种跨域json数据交换方法和系统

Country Status (1)

Country Link
CN (1) CN109451058A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104317819A (zh) * 2014-09-28 2015-01-28 北京京东尚科信息技术有限公司 基于浏览器页面间跨域通信的方法和系统
CN104410711A (zh) * 2014-12-15 2015-03-11 北京国双科技有限公司 客户端跨域请求网络资源的方法和装置
US20170163500A1 (en) * 2010-11-03 2017-06-08 Google Inc. Data delivery
CN107580013A (zh) * 2017-07-25 2018-01-12 阿里巴巴集团控股有限公司 跨域请求数据的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170163500A1 (en) * 2010-11-03 2017-06-08 Google Inc. Data delivery
CN104317819A (zh) * 2014-09-28 2015-01-28 北京京东尚科信息技术有限公司 基于浏览器页面间跨域通信的方法和系统
CN104410711A (zh) * 2014-12-15 2015-03-11 北京国双科技有限公司 客户端跨域请求网络资源的方法和装置
CN107580013A (zh) * 2017-07-25 2018-01-12 阿里巴巴集团控股有限公司 跨域请求数据的方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
EVAXTT: "ajax请求json数据跨域问题", 《HTTPS://WWW.CNBLOGS.COM/EVAXTT/P/9585325.HTML》 *
宁呦呦: "ajax使用json数据格式--无效的JSON基元", 《HTTPS://WWW.CNBLOGS.COM/NINGYOUYOU/P/8202827.HTML》 *
陈腊梅 等: "AJAX跨域访问的研究与应用", 《计算机工程与设计》 *

Similar Documents

Publication Publication Date Title
US10110695B1 (en) Key resource prefetching using front-end optimization (FEO) configuration
US10027564B2 (en) Unobtrusive methods and systems for collecting information transmitted over a network
CN107483609B (zh) 一种网络访问方法、相关设备和系统
US9342620B2 (en) Loading of web resources
US20160277515A1 (en) Server side data cache system
CN103200212B (zh) 一种在云计算环境下实现分布式会话的方法和系统
CN102783119B (zh) 访问控制方法、系统及接入终端
CN103383687B (zh) 一种页面处理方法和装置
CN103281387B (zh) 处理网页中子资源的方法、服务器、客户端和系统
CN106897336A (zh) 网页文件发送方法、网页渲染方法及装置、网页渲染系统
CN102929985A (zh) 一种收藏网页展示的方法和系统
CN104615771B (zh) 一种获取网页数据的方法及装置
CN110855766A (zh) 一种访问Web资源的方法、装置及代理服务器
US20110302272A1 (en) Unobtrusive methods and systems for collecting information transmitted over a network
CN102970384A (zh) 代理服务器和通信系统
CN104615597B (zh) 浏览器中清除缓存文件的方法、装置和系统
CN107645543B (zh) 应用于缓存服务器http非80缓存端口服务的方法和系统
CN110532455A (zh) 一种基于Chrome浏览器的网页图片获取方法和系统
US20150312313A1 (en) Proxy for modifying http messages to comply with browser
CN106919595B (zh) 一种用于Cookie映射的方法、装置及电子设备
CN109451058A (zh) 一种跨域json数据交换方法和系统
US20120278558A1 (en) Structure-Aware Caching
AU2019384114B2 (en) Method and apparatus for accessing proprietary resources on a co-browse session
CN110912769B (zh) Cdn缓存命中率统计方法、系统、网络设备及存储介质
CN109587239A (zh) 一种访问请求的处理方法、服务器及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190308

RJ01 Rejection of invention patent application after publication