js调用webservice接口
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js调用webservice接口相关的知识,希望对你有一定的参考价值。
需求是这样的!用js模拟客户端去调用web服务接口!接口有请求参数和响应参数(都是string类型),如何发送请求参数(请求参数有多个,能否放在数组里一起发送如何实现?)给服务端,服务端响应的参数又如何在客户端(网页)显示哇?!最好有发送请求参数的实例代码~原理也说说吧各位亲!
js 主要用于做客户端处理,不与服务器打交道,你这个是与服务器端打交道了,属于特殊情况。你可以用 createobject 调用组件,从而实现与服务端通信。AJAX 、 JS 的ADO 数据库连接、JSON都是这样做的。追问多参数用json咋用 举个例子吧
多参数用json咋用 举个例子吧
追答这是JQUERY AJAX 中使用JSON的例子,第二个参数就是JSON的数据格式
$.getJSON("test.js", name: "John", time: "2pm" , function(json)
alert("JSON Data: " + json.users[3].name);
);
json.users[3].name 这个是什么意思
追答自定义的东西,这是其中一段。
参考技术A 网上的例子很多,随便搜一个就行,我刚才看了下,一片一片的追问你说在发送请求的时候使用soap协议,具体怎么用啊?放在js代码里?那比如我现在有app_id 、user_id两个请求参数要发到服务端接口怎么实现哇? 网上的代码我不太理解呢
追答下午给写个简单的例子,加上注释。我还就不相信非要用dwr了,别以为会个加密就牛B了
追问高手求例子呜呜~
追答把你的邮箱给我,我都写好注释了,你试着用一下,我只能按你说的模仿一个简单的,自己发布接口
追问nothing80@yahoo.cn 3q哇~
追答如果你的webservice方法的返回值是对象的话一定要将对象进行序列化
本回答被提问者采纳 参考技术B 请用ajax来做。单独用js是不可能的。推荐dwr3.0追问不好意思啦~
求讲解哇~
// 封装创建XMLHttpRequest对象
function createXMLHTTPObject()
var XMLHttpFactories = [
function () return new XMLHttpRequest() ,
function () return new ActiveXObject("Msxml2.XMLHTTP") ,
function () return new ActiveXObject("Msxml3.XMLHTTP") ,
function () return new ActiveXObject("Microsoft.XMLHTTP") ,
];
var xmlhttp = false;
for (var i = 0; i < XMLHttpFactories.length; i++)
try
xmlhttp = XMLHttpFactories[i]();
catch (e)
continue;
break;
return xmlhttp;
//封装异步请求函数
function request(url, callback, data)
var xmlHttp = createXMLHTTPObject();
if (!xmlHttp) return;
var method = (data) ? "POST" : "GET";
xmlHttp.open(method, url, true);
xmlHttp.setRequestHeader('User-Agent', 'XMLHTTP/1.0');
if (data)
xmlHttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlHttp.onreadystatechange = function ()
if (xmlHttp.readyState != 4) return;
if (xmlHttp.status != 200 && xmlHttp.status != 304)
alert('HTTP请求错误 ' + xmlHttp.status);
return;
callback(xmlHttp);
if (xmlHttp.readyState == 4) return;
xmlHttp.send(data);
</script>
<script type="text/javascript">
//定义请求地址
var mi = document.domain
var url = "http://ip-api.com/json/?lang=zh-CN";
//定义回调函数,参数为XMLHttpRequest对象
var callback = function (xmlHttp)
var info = xmlHttp.responseText;
var o = eval("(" + info + ")");
$("#michen").html("通过接口动态查询IP" + JSON.stringify(o));
//alert(info);
// alert(o[1].name);
//调用请求函数
request(url, callback);
</script>
<span id="michen"></span>
以上是关于js调用webservice接口的主要内容,如果未能解决你的问题,请参考以下文章