jsonservice.js

来自「这是一个ajax的例子大家好好的看看就是一个鱼眼的效果」· JavaScript 代码 · 共 84 行

JS
84
字号
if(!dojo._hasResource["dojo.rpc.JsonService"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.dojo._hasResource["dojo.rpc.JsonService"] = true;dojo.provide("dojo.rpc.JsonService");dojo.require("dojo.rpc.RpcService");dojo.declare("dojo.rpc.JsonService", dojo.rpc.RpcService, {		bustCache: false,		contentType: "application/json-rpc",		lastSubmissionId: 0,		callRemote: function(method, params){			// summary:			// 		call an arbitrary remote method without requiring it to be			// 		predefined with SMD			//	method: string			//		the name of the remote method you want to call.			//	params: array			//		array of parameters to pass to method			var deferred = new dojo.Deferred();			this.bind(method, params, deferred);			return deferred;		},		bind: function(method, parameters, deferredRequestHandler, url){			//summary:			//		JSON-RPC bind method. Takes remote method, parameters,			//		deferred, and a url, calls createRequest to make a JSON-RPC			//		envelope and passes that off with bind.			//	method: string			//		The name of the method we are calling			//	parameters: array			//		The parameters we are passing off to the method			//	deferredRequestHandler: deferred			//		The Deferred object for this particular request			var def = dojo.rawXhrPost({				url: url||this.serviceUrl,				postData: this.createRequest(method, parameters),				contentType: this.contentType,				timeout: this.timeout, 				handleAs: "json-comment-optional"			});			def.addCallbacks(this.resultCallback(deferredRequestHandler), this.errorCallback(deferredRequestHandler));		},		createRequest: function(method, params){			// summary:			//	create a JSON-RPC envelope for the request			//	method: string			//		The name of the method we are creating the requst for			//	params: array			//		The array of parameters for this request;						var req = { "params": params, "method": method, "id": ++this.lastSubmissionId };			var data = dojo.toJson(req);			return data;		},		parseResults: function(/*anything*/obj){			//summary:			//		parse the result envelope and pass the results back to			//		the callback function			//	obj: Object			//		Object containing envelope of data we recieve from the server			if(dojo.isObject(obj)){				if("result" in obj){					return obj.result;				}				if("Result" in obj){					return obj.Result;				}				if("ResultSet" in obj){					return obj.ResultSet;				}			}			return obj;		}	});}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?