精灵巫婆 发表于 2015-1-16 23:37:41

ASP编程:WebService Behavior 进修心得

帮助用户快速实现各种应用服务,ASP商有整合各方面资源的能力,可在短期内为用户提供所需的解决方案。例如,典型的ERP安装,如果要在客户端安装的话需要半年到二年的时间,但是美国的一些ASP商如USI和CORIO能在90—120天内提供ERP应用方案。web|心得XMLWebservices举动使客户端剧本可以挪用由Microsoft.NETXMLWebservices或其他撑持复杂工具会见协定(SOAP)的Web服务器公然的远程办法。

目标:供应一种复杂的办法利用和使用SOAP,而不需具有SOAP完成的专业常识。

步骤:

1.下载Webservice.htc,很多网上的文章先容该文件能够在微软的网站上找到,但我依照地点点出来时,只看到网页不存在的提醒

2.创立WebService文件假定为MathService.asmx,其供应Add和Subtract两个服务函数

3.创立挪用的网页文件Sample.htm(文件内容鄙人面具体剖析)

4.将Webservice.htc复制到Sample.htm统一目次下

5.经由过程扫瞄器,扫瞄该网页

上面剖析Sample.htm的内容(取自Msdn)

<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">
<HTML>
<HEAD>
<LINKREL="stylesheet"HREF="/workshop/samples/samples.css"TYPE="text/css">

<SCRIPTlanguage="JavaScript">
variCallID;
varcallObj;
functioninit()
{

//定位WebService服务地位,而且为该服务制订一个名字//统一ServiceURl能够指定多个名字,Service为HTM文件中的HTMLTAG,可使用HTML中界说的任何标志
service.useService("....MathService.asmx?WSDL","MyMath");
//禁用Add按钮.
doAddButton.disabled=true;
service.onserviceavailable=enableButton();
}
functionenableButton(){
doAddButton.disabled=false;
}

functiondoAdd(x,y){
//同步伐用//创立一个theSOAPHeaderobject
varheadObj=newObject();
//创立thecallobject
callObj=service.createCallOptions();
callObj.async=false;
callObj.params=newArray();
callObj.params.a=x;
callObj.params.b=y;
callObj.funcName="Add";
callObj.SOAPHeader=newArray();
callObj.SOAPHeader=headObj;
oSPAN.innerText=x+"+"+y+"=";
//利用回调函数"mathResults"挪用
iCallID=service.MyMath.callService(mathResults,callObj);
mathResults(iCallID);
}


functiondoSubtraction(y,x){
//异步伐用,这是体系默许的挪用体例(thedefault)
oSPAN.innerText=y+"-"+x+"=";
//挪用Subtract
//利用回调函数"mathResults"挪用
iCallID=service.MyMath.callService(mathResults,"Subtract",y,x);
}


functionmathResults(result){
//Ifthereisanerror,andthecallcamefromthecall()ininit()
if(result.error){
//Pulltheerrorinformationfromtheevent.result.errorDetailproperties
varxfaultcode=result.errorDetail.code;
varxfaultstring=result.errorDetail.string;
varxfaultsoap=result.errorDetail.raw;
oSPAN.innerText=xfaultcode+""+xfaultstring+""+xfaultsoap;
}//Iftherewasnoerror
else{
//Showthearithmetic
oSPAN.innerText+=result.value;
}
}
</SCRIPT>
</HEAD>
<bodyonload="init()">
//设置Div元素绑定WebService服务,在这里能够增加onresult="onWSresult()",在该事务中处置挪用了局
<divid="service"style="behavior:url(../webservice.htc)"></div>
<BR><BR>
Equation:<SPANid="oSPAN"></SPAN>
<BR><BR>
<BUTTONid="doAddButton"onclick="doAdd(5,6);">DoAddfunctionof5and6</BUTTON>
<BUTTONonclick="doSubtraction(6,5);">DoSubtractionof6and5</BUTTON>
</body>

一些总结:

客户端必需包括Webservice.htc,将Webservice.htc放在服务器可会见的目次下,能够包管IE扫瞄器扫瞄时主动下载该文件,该历程对客户来讲是通明的,可是利用其他的扫瞄器大概会没法利用该功效。
猎取挪用了局有两种体例
利用事务捕捉:在Html标志中增加onresult="onWSresult()",如:
<SCRIPTlanguage="JavaScript">
variCallID;

functioninit()
{
service.useService("/services/math.asmx?WSDL","MyMath");
iCallID=service.MyMath.callService("add",5,6);
}

functiononWSresult()
{
if((event.result.error)&&(iCallID==event.result.id))
{
varxfaultcode=event.result.errorDetail.code;
varxfaultstring=event.result.errorDetail.string;
varxfaultsoap=event.result.errorDetail.raw;
document.writeln("ERROR.Methodcallfailed!");
document.writeln("CallID:"+iCallID);
document.writeln("FaultCode:"+xfaultcode);
document.writeln("FaultString:"+xfaultstring);
document.writeln("SOAPData:"+xfaultsoap);
}
elseif(event.result.error==false)
{
document.writeln("Resultreceivedwit</p>只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天

莫相离 发表于 2015-1-20 10:45:20

从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了

小女巫 发表于 2015-1-25 18:19:25

如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。

第二个灵魂 发表于 2015-2-3 12:39:41

不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍

飘灵儿 发表于 2015-2-3 12:46:24

Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write

小妖女 发表于 2015-2-9 00:56:53

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

飘飘悠悠 发表于 2015-2-26 16:04:54

代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。

海妖 发表于 2015-3-8 16:02:36

你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。

乐观 发表于 2015-3-16 04:02:33

掌握asp的特性而且一定要知道为什么。

不帅 发表于 2015-3-22 20:02:11

下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
页: [1]
查看完整版本: ASP编程:WebService Behavior 进修心得