WEBSERVICE
简单的说,它是一个供应商提供的服务,该供应商提供的服务器端提供了一些方法,这些方法可以在internet上被其化客户在任何操作平台上直接调用,而且不需要考虑
这些方法是用哪种语言编写的。
XML
是一种结构化的文本,也就是说,可以将数据表示为具有层次结构的结构化文本形式。由于任何平台都支持文本,所以把数据转换为文本就可以达到跨平台传递数据的功能,
实现不同平台之间的数据共享。
xml常用类
xmlreader,xmlwriter,xmltextwriter,xmldocument,xmldatadocument,xmlnode,xmlnodelist,xmlelement,xmlattribute.
SOAP
简单对像访问协议,用来与web service交换数据,是一个开放的基于XML的internet标准。简单地说,它是传送HTTP请求和应答数据的一种标准。
.net remoting
using System;
namespace RemoteObject
{
public class MyObject : MarshalByRefObject
{
public int Add(int a,int b)
{
return a + b;
}
}
}
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
namespace TestRemotingConsoleServer
{
class Program
{
static void Main(string[] args)
{
// 新建一个TCP信道
TcpChannel tc = new TcpChannel(9999);
// 注册TCP信道
ChannelServices.RegisterChannel(tc,false);
// 注册知名对象
RemotingConfiguration.RegisterWellKNownServiceType(typeof(RemoteObject.
MyObject),"myObject",WellKNownObjectMode.SingleCall);
// 让控制台不会自动关闭
Console.ReadLine();
}
}
}
protected void Page_Load(object sender,EventArgs e)
{
RemoteObject.MyObject mo = (RemoteObject.MyObject)Activator.Getobject
(typeof(RemoteObject.MyObject),"tcp://localhost:9999/myObject");
Response.Write(mo.Add(1,2));
}
wsdl
web服务描述语言,用于描述web service提供的方法以及调用这些方法的各种方式。它是另一种与XML完全兼容的语法。
web service文件的扩展名为asmx,其后端代码扩展名为.asmx.cs。在后端代码中,可以定义public形式的方法,而且定义的方法前还要用webMethod特性表明。
如果没有webmethod特性描述,web service中定义的方法就不能对外提供服务。
[WebMethod]
public string UpString(string getString)
{
string backString=getString.toupper();
return backString;
}
这里WebMethod是对UpString()方示的声明。
对于每个web service来说都需要一个惟一的命名空间,以便于客户端应用程序能够将它和web上有其它服务区分开。而asp.net创建的工程默认的命名空间都是相同的,
使用WebServiceAttribute类中的Namespace特性可以更改系统默认的命名空间。如:
[WebService(Namespace=http://www.myweb.com/webservice/)]
public class myWebservice
{
................
}
表明客户端应用程序调用是的http://www.myweb.com/webservice/上的服务。
它的位置在public class myWebservice声明的上一行,表示该Web Service使用的名称空间。
//----------------------------------
新建一个项目,在“模板”中选择ASP.NET Web服务,命名为MyWebService
如果需要,输入一个能用开发Web Service的Web服务器地址,单击确定。
...........
namespace MyWebService
{
[WebServie(Namespace="http://localhost/webservices")]
public class Service:System.Web.Servies.WebService
{
..............
[WebMethod]
public string HelloWorld()
{
return "hello world";
}
[WebMethod]
public string ConvertString(string str,bool toLower)
{
if(toLower)
{
str=str.ToLower();
}
else
{
str=str.toupper();
}
return str;
}
}
}
web service的调用方法
选择“解决方案资源管理器”,右击引用,选择添加web引用,输入URL"http://localhost(或网址)/Mywebservie/service1.asmx"
localhost.service1 cc=new Testwebservie.localhost.service1();
this.texttab.tex=cc.ConvertString(this.textBoxinput.text,false)
/////////////////////////////////// ===================================================== var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.open("GET","xml_yz.aspx?act=UserManager_insert&czydm="+UserForm.czyDm.value,false); //相对路径 xmlhttp.send(); retInfo=xmlhttp.responseText; //alert(retInfo); if(retInfo=="pass") { } else { alert("操作员代码 "+retInfo+" 已存在!"); return false; } } return true;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。