`
huangxx
  • 浏览: 321798 次
  • 来自: ...
社区版块
存档分类
最新评论

cometd: dojo 跨越访问之JSONP

阅读更多

http://www.matrix.org.cn/resource/article/2008-03-06/b2e0ea4e-eb69-11dc-91da-b599c3ba16ef.html

 

		// if xdomain, then we assume jsonp for handshake
		if(this._isXD){
			bindArgs.callbackParamName = "jsonp";
			r = dojo.io.script.get(bindArgs);
		}else{
			r = dojo.xhrPost(bindArgs);
		}

 

	attach: function(/*String*/id, /*String*/url, /*Document?*/frameDocument){
		//	summary:
		//		creates a new <script> tag pointing to the specified URL and
		//		adds it to the document.
		//	description:
		//		Attaches the script element to the DOM.  Use this method if you
		//		just want to attach a script to the DOM and do not care when or
		//		if it loads.
		var doc = (frameDocument || dojo.doc);
		var element = doc.createElement("script");
		element.type = "text/javascript";
		element.src = url;
		element.id = id;
		doc.getElementsByTagName("head")[0].appendChild(element);
	},

 

 

cometd 里面有JSONP的知识,所以搜索了一下,见上面的链接。

 

 

预备知识:

        1.什么是JSONP:JSONP(JSON with Padding)是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。
        2.为什么使用JSONP:由于 JSON 只是一种含有简单括号结构的纯文本,因此许多通道都可以交换 JSON 消息。因为同源策略的限制,我们不能在与外部服务器进行通信的时候使用 XMLHttpRequest。而JSONP是一种可以绕过同源策略的方法,即通过使用 JSON 与 <script> 标记相结合的方法,从服务端直接返回可执行的JavaScript函数调用或者JavaScript对象。
        3.谁在使用JSONP:dojoJQueryYoutube GData API Google Social Graph API Digg APIGeoNames webservice豆瓣APIDel.icio.us JSON API等。


......

分享到:
评论

相关推荐

    cometd-dojo:CometD的Dojo绑定

    如何使用它下载特定版本的CometD Dojo绑定,浏览 在您选择的目录下的目录结构(已经有Dojo(和其他库))中解压缩CometD Dojo绑定,例如目录cometd-dojo/ : dojo/dijit/cometd-dojo/ cometd/ org/ cometd.js 现在,...

    源码部署javaTomcat-cometd:CometD项目,用于Web消息传递的可扩展Comet(服务器推送)实现

    源码安装java Tomcat CometD 计划 欢迎使用该项目,这是一个用于 Web ...Dojo/jQuery clients cometd-documentation - The CometD documentation cometd-java - The Java server and java client li

    tapestry-cometd:基于 CometD 的 Tapestry5 推送库

    建立在坚如磐石的库之上 支持 抽象(在之上) 消息到达时客户端更新策略的选择(、或) 自定义 自定义订阅侦听器 将动态 javascript推送到客户端 用法: 页面.tml &lt; html xmlns : t = " ...

    cometd-archetype-spring-dojo-jetty7-2.8.0-RC1.zip

    【标题】"cometd-archetype-spring-dojo-jetty7-2.8.0-RC1.zip" 提供的是一个开源项目构建模版,主要用于创建基于CometD、Spring、Dojo以及Jetty 7的应用。这个压缩包的核心是帮助开发者快速搭建一个实时Web应用,...

    cometd-1.0.0rc0 源码

    - **多协议支持**:CometD不仅支持WebSocket,还支持其他长连接技术如Long-Polling、Streaming和JSONP,以确保在不支持WebSocket的浏览器或环境中也能工作。 - **可扩展性**:CometD的设计允许添加自定义的适配器和...

    cometd-javascript-dojo-2.7.0.zip

    spring-integration-aws.zip,使用amazon简单队列服务(sqs)和amazon简单通知服务(sns)接收和发送消息的通道和通道适配器的集合。使用amazon简单队列服务(sqs)和amazon简单通知服务(sns)接收和发送消息的...

    cometd-5.0.x.zip

    4. **模块化设计**:CometD采用模块化设计,允许开发者根据需求选择和配置不同的扩展,如WebSocket、Long-Polling、JSONP等传输方式,以及缓存、日志、监控等附加功能。 5. **可扩展性**:CometD提供了一个丰富的...

    dojo学习第一天 Tab选项卡 实现

    它包含大约40个用户界面控件、1个图形框架、cometd支持、1个打包系统,还有其他的一些东西。 从dojo官方网站 上下载最新版1.6,解压下来,它有三个文件夹分别是:   1. dojo: 是Dojo基础,你要做的其它事情都是在它...

    cometd-bayeux-6.1.10.jar.zip

    6. 关闭CometD:在应用关闭时,记得正确地关闭CometD实例,释放资源。 通过深入理解和熟练运用`cometd-bayeux-6.1.10.jar`,开发者可以构建出高效、稳定的实时应用,提升用户的交互体验。同时,CometD社区活跃,...

    cometd 框架实现的几个小程序

    在实现这些功能时,前端通常会使用JavaScript库(如jQuery或Dojo),通过CometD JavaScript API进行订阅和发布操作。后端则使用Java编写CometD服务端代码,处理订阅、发布以及业务逻辑。Jetty服务器作为CometD的运行...

    mycometd_push_Cometd_消息推送_

    CometD是一个开源的、基于Bayeux协议的双向通信框架,它允许Web服务器向客户端实时推送数据,而无需客户端不断发起请求。这种技术在现代Web应用中非常常见,尤其适用于实时聊天、股票更新、在线游戏等场景。下面将...

    实时动态显示的domo系统

    - **Dojo**:Dojo是一个强大的JavaScript库,支持AJAX、DOM操作等功能,特别适合于构建复杂的Web界面。Dojo与CometD的结合,可以轻松实现实时数据更新。 - **Rico**:Rico(Rich Internet Components)是另一个...

    DOjo中文使用手册

    Dojox是DOjo的一个扩展包,提供了许多有用的功能,如 CometD、图表、数据Grid等。Dojox可以帮助用户快速构建复杂的Web应用程序。 DOjo中文使用手册是一个非常详细和全面的使用手册,涵盖了DOjo的安装、使用、调试等...

    cometd-3.0.0.beta2-distribution.tar.gz

    4. **多语言支持**:虽然主要是Java实现,但CometD还提供了JavaScript、jQuery、Dojo、GWT等客户端库,以便在各种Web环境中使用。 5. **跨平台**:CometD可以在多种服务器平台上运行,如Jetty、Tomcat、GlassFish、...

    cometd-jquery的jar

    CometD是一个基于Bayeux协议的开源 comet(也称为长轮询)框架,它提供了一个高效的、可扩展的、跨平台的实时通信解决方案。在Web开发中,实时通信是实现如聊天、股票更新、协作编辑等应用的关键技术。CometD支持...

    Jetty cometd(Continuation)学习笔记

    Dojo提供了Cometd模块,可以方便地与Jetty Cometd服务进行对接,实现订阅和发布消息的功能。例如,客户端可以通过订阅特定的频道来接收服务器推送的消息,而服务器则可以通过发布消息到这些频道来更新客户端的状态。...

    CometD 简介

    ### CometD 简介 #### 一、CometD 概述 CometD 是一个基于 Bayeux 协议实现的实时通信框架,它允许客户端与服务器之间进行双向数据传输,支持多种消息传递机制,包括轮询、长轮询、流式传输等。CometD 的设计目标...

    CometD2.x官方帮助手册

    CometD是一个开源的、基于Java的WebSocket和Bayeux协议的实时Web应用程序框架,它使得服务器能够与浏览器或其他客户端进行双向通信,实现高效的推送服务。这个“CometD2.x官方帮助手册”是该技术的离线版文档,包含...

    Cometd 开发指南

    CometD是一种利用了Comet技术的框架,它能够在客户端和服务端之间建立持久的连接,并实现实时双向通信。Comet技术主要是为了解决HTTP协议的短连接问题,允许服务器主动向客户端发送数据,而不是传统Web应用中客户端...

    cometd实例demo

    CometD是一个基于Bayeux协议的开源JavaScript库,它实现了服务器推送技术,允许服务器主动向客户端发送数据,而不仅仅是响应客户端的请求。这个“cometd实例demo”提供了使用CometD的一个实际示例,可以帮助开发者...

Global site tag (gtag.js) - Google Analytics