java js webservice_java Web技术探路:js Ajax调用WebService
StuList = new List();
for (int i = 0; i < 10; i++)
{
Student s = new Student();
s.Sid = i + 1;
s.Name = "Tom"+s.Sid;
s.Sex = "男";
s.Age = i + 1;
StuList.Add(s);
}
return StuList;
}
}
}
注意:我们分别看一下这几个方法的签名,这很重要,因为方法签名决定了你调用必须遵守的规则,本文中我们用的是post方法,所以只给出post的方法签名。
1.HelloWebService
说明:请求的页面的地址: /MyWebService.asmx/HelloWebService;主机地址为:192.168.0.194;端口号:如果不是80端口,必须给出。
调用该服务的完整路径为:http://192.168.0.194:85/MyWebService.asmx/HelloWebService 。(具体情况,具体分析)
2.HelloSomeBody
说明:请求的页面的地址: /MyWebService.asmx/HelloSomeBody;主机地址为:192.168.0.194;端口号:如果不是80端口,必须给出。
“name=string”说明,请求该服务时,需要提供参数。
调用该服务的完整路径为:http://192.168.0.194:85/MyWebService.asmx/HelloSomeBody 。(具体情况,具体分析)
3.SetStudentInfo
说明:请求的页面的地址: /MyWebService.asmx/SetStudentInfo;主机地址为:192.168.0.194;端口号:如果不是80端口,必须给出。
注意参数说明。
调用该服务的完整路径为:http://192.168.0.194:85/MyWebService.asmx/SetStudentInfo 。(具体情况,具体分析)
4.GetMulStudentInfos
说明:请求的页面的地址: /MyWebService.asmx/HelloSomeBody;主机地址为:192.168.0.194;端口号:如果不是80端口,必须给出。
调用该服务的完整路径为:http://192.168.0.194:85/MyWebService.asmx/GetMulStudentInfos。(具体情况,具体分析)
3.下面是核心部分,也就是调用服务的Ajax脚本代码。CallWebService.js
$(document).ready(pageLoad);
// 载入时进行执行的方法
function pageLoad() {
BindCallHello();
BindCallBody();
BindGetSingleStudent();
BindGetMulStudents();
}
// 调用HelloWebService
function BindCallHello(){
$("#btnCallHello").click(function() {
$.ajax({
type: "post", //访问WebService使用Post方式请求
url: "http://192.168.0.194:85/MyWebService.asmx/HelloWebService", //调用Url(WebService的地址和方法名称组合---WsURL/方法名)
data: {}, //这里是要传递的参数,为Json格式{paraName:paraValue}
contentType: "Application/Json", // 发送信息至服务器时内容编码类型
beforeSend: function(XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "Application/Json"); // 接受的数据类型。(貌似不起作用,因为WebService的请求/返回 类型是相同的,由于请求的是Json,所以,返回的默认是Json)
},
success: function(data) {
var jsonValue = data;
alert(jsonValue.d);// 输出Json
},
complete: function(XMLHttpRequest, textStatus) {
var returnText = XMLHttpRequest.responseText;
$("#backData").html(returnText);// 输出服务器端返回数据
}
});
});
}
// 调用调用HelloSomeBody
function BindCallBody() {
$("#btnCallBody").click(function() {
var name = $("#txtName").val();
$.ajax({
type: "post", //访问WebService使用Post方式请求
url: "http://192.168.0.194:85/MyWebService.asmx/HelloSomeBody", //调用Url(WebService的地址和方法名称组合---WsURL/方法名)
data: "{name:'" + name + "'}", //这里是要传递的参数,为Json格式{paraName:paraValue}
contentType: "Application/Json", // 发送信息至服务器时内容编码类型
beforeSend: function(XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "Application/Json"); // 接受的数据类型。(貌似不起作用,因为WebService的请求/返回 类型是相同的,由于请求的是Json,所以,返回的默认是Json)
},
success: function(data) {
var jsonValue = data;
alert(jsonValue.d); // 输出Json
},
complete: function(XMLHttpRequest, textStatus) {
var returnText = XMLHttpRequest.responseText;
$("#backData").html(returnText); // 输出服务器端返回数据
}
});
});
}
function BindGetSingleStudent() {
$("#btnSinStuInfo").click(function() {
var stuSid = $("#txtStuSid").val();
var stuName = $("#txtStuName").val();
var stuSex = $("#txtStuSex").val();
var stuAge = $("#txtStuAge").val();
$.ajax({
type: "post", //访问WebService使用Post方式请求
url: "http://192.168.0.194:85/MyWebService.asmx/SetStudentInfo", //调用Url(WebService的地址和方法名称组合---WsURL/方法名)
data: "{name:'" + stuName +"',sex:'"+stuSex+"',age:'"+stuAge+"',sid:'"+stuSid+ "'}", //这里是要传递的参数,为Json格式{paraName:paraValue}
contentType: "Application/Json", // 发送信息至服务器时内容编码类型
beforeSend: function(XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "Application/Json"); // 接受的数据类型。(貌似不起作用,因为WebService的请求/返回 类型是相同的,由于请求的是Json,所以,返回的默认是Json)
},
success: function(data) {
var jsonValue = data;
alert(jsonValue.d.Sid); // 输出Json
},
complete: function(XMLHttpRequest, textStatus) {
var returnText = XMLHttpRequest.responseText;
$("#backData").html(returnText); // 输出服务器端返回数据
}
});
});
}
function BindGetMulStudents() {
$("#btnMulStuInfos").click(function() {
$.ajax({
type: "post", //访问WebService使用Post方式请求
url: "http://192.168.0.194:85/MyWebService.asmx/GetMulStudentInfos", //调用Url(WebService的地址和方法名称组合---WsURL/方法名)
data: {}, //这里是要传递的参数,为Json格式{paraName:paraValue}
contentType: "Application/Json", // 发送信息至服务器时内容编码类型
beforeSend: function(XMLHttpRequest) {
XMLHttpRequest.setRequestHeader("Accept", "Application/Json"); // 接受的数据类型。(貌似不起作用,因为WebService的请求/返回 类型是相同的,由于请求的是Json,所以,返回的默认是Json)
},
success: function(data) {
var jsonValue = data;
alert(jsonValue.d[0].Sid); // 输出Json
},
complete: function(XMLHttpRequest, textStatus) {
var returnText = XMLHttpRequest.responseText;
$("#backData").html(returnText); // 输出服务器端返回数据
}
});
});
}
说明:相关注释写的很详细,应该地球人都知道。应该是玩程序的地球人都知道。
总结:
至此,所有代码知识点,都已经贴出来了。
细心的读者应该能发现,我之所以很赘述的把4个服务方法都列了出来,其实是想让大家看清楚,每个方法的侧重点不同。调用方法上包括:无参数的调用,参数调用。
返回值类型上包括:返回字符串,返回自定义实体数据。
所有返回值都为Json数据。Json数据作为返回值,近来大受亲睐。
java js webservice_java Web技术探路:js Ajax调用WebService相关推荐
- 关于js实现的Ajax调用,webService,一般处理程序,aspx
记得以前学的时候,网上的资料一大堆,就是没几个看的懂,都是理论,包括我目前看的mvc书都是一样,废话一堆,其实东西没那么难,让作者把某个技术吹上天了. 下面是一些初学者,比较实用的代码,欢迎大虾指导. ...
- jQuery Ajax 调用WebService实例详解
JQuery Ajax调用webservice的一些经验记录,在此实例中,解决跨域使用了Core解决方案,在下一篇文章中,会介绍JS 跨域的问题. 实例!.实例!.实例! 跨域解决方案 实例-源码 前 ...
- ajax处理返回的xml数据,使用AJAX调用WebService返回xml不返回json原因以及解决办法...
初次尝试用AJAX调用webservice,结果无论怎么设置webservice返回的都是xml对象,一般的jquery处理json是更方便的. webservice理论上将下面这段代码按照说明取消注 ...
- Jquery ajax调用webservice总结
Jquery ajax调用webservice总结 jquery ajax调用webservice(C#)要注意的几个事项: 1.web.config里需要配置2个地方 <httpHandler ...
- 基于 vue.js 的 SSR 技术 — Nuxt.js
为什么要使用Nuxt.js Nuxt 基于一个强大的模块化架构.你可以从 50 多个模块中进行选择,让你的开发变得更快.更简单.对 PWA 的支持.添加谷歌分析到你的网页或生成网站地图,这些功能都无需 ...
- 武汉理工大学java,武汉理工大学 web技术基础
计算机网络是现代通信技术与计算机技术相结合的产物,Internet则是计算机网络的最具体的应用.Web服务是最主要的网络服务,几乎一提到Internet,就会想到Web技术. 本课程将介绍互联网的发展 ...
- Ajax调用webService(一) 不跨域。
注:需要的js文件与组件(jquery-1.4.2.min.js和Newtonsoft.Json) 同域:要调用的webservice与ajax请求页面在同一个网站下(本文中都是本地测试). 数据库( ...
- webService学习9:jquery ajax调用webservice
1 参照 webService学习7:调用天气接口 生成客户端代码 2 前台代码 <%@ page language="java" import="java.ut ...
- jquery ajax 调用webservice以及跨域问题
先在服务器端配置webconfig,因为默认情况下是不支持post,get访问 在system.web 中间 <webServices ><protocols ><add ...
最新文章
- 非 985/211 学校的毕业生,进大厂的机率有多大?
- Centos7.0一键搭建Python3.6开发环境
- CRMEB v2.5.2常见错误修复办法
- MSG_PEEK标志
- 学会使用context取消goroutine执行的方法
- mysql log all sql_记录一次mysqlbinlog恢复过程
- python做定时任务api_Python—定时任务(APScheduler实现)
- [总结]-第七章 虚拟机类加载机制
- Eclipse创建的JSP文件链接SQLServer2012的方法(附图)
- SPSS教程:单因素重复测量方差分析,超详细图文教程
- Linux系统入门学习
- Set_output_delay怎么使用?
- canva五角星空html,使用canvas绘制一个五角星
- ​​【​观察】萨提亚为微软中国定下主基调 平台价值释放与生态伙伴共赢
- 建设中的中国未来11大著名建筑
- php字符串加加运算,php 学习笔记
- 重学计算机组成原理(十一)- 门电路的千里传音
- 水库安全监测自动化系统解决方案
- FPGA的六层电梯控制器Verilog语言
- 常见的CSS页面布局方式
热门文章
- 云安全的新战场上,要靠什么来抵御威胁
- 3.3亿人都在用小程序,中国首次定义的互联网标准又有新进展
- 产业数字化升级进入深化期,腾讯智慧出行释放“数字底座”核心能力
- 集齐最后一块拼图,全栈Serverless时代正式开启
- 在线教育如何应对流量洪峰?阿里云专家:上云+云数据库是最佳路径
- 【光说不练假把式】今天说一说Kubernetes 在有赞的实践
- Android 之父裁员 30%:开发者如何避免“被离职”?
- cloud一分钟 | 李飞飞离任谷歌云,工作重心将重新转回学术界
- 避免大规模故障的微服务架构设计之道
- php开发api数据加密,php-app开发接口加密