c#开发园地

c#开发园地

管理




open()方法

你需要调用open(DOMString method,DOMString uri,【boolean async】,【DOMString username】,【DOMString password】)方法初始化一个XMLHttpRequest对象。其中,method参数是必须提供的-用于指定你想用来发送请求的HTTP协议 (GET,POST,PUT)。为了把数据发送到服务器,应该使用POST方法;
关于post协议多说几句,如果指定post协议,就要调用setRequestHeader("Content-Type", "application/x-www-form-urlencoded");方法设置请求头(RequestHeader。并在send()方法中提供数据

为了从服务器端检索数据,应该使用GET方法。 另外,uri参数用于指定XMLHttpRequest对象把请求发送到的服务器相应的URI。借助于window.document.baseURI属 性,该uri被解析为一个绝对的URI-换句话说,你可以使用相对的URI-它将使用与浏览器解析相对的URI一样的方式被解析。

关于URL,可以是一个页面(aspx文件),可以是一个 Ihttphandler类(ashx文件)
async参数指定是否 请求是异步的-缺省值为true。为了发送一个同步请求,需要把这个参数设置为false。对于要求认证的服务器,你可以提供可选的用户名和口令参数。在 调用open()方法后,XMLHttpRequest对象把它的readyState属性设置为1(打开)并且把responseText、 responseXML、status和statusText属性复位到它们的初始值。另外,它还复位请求头部。注意,如果你调用open()方法并且此 时readyState为4,则XMLHttpRequest对象将复位这些值。


send()方法使用一个可选的参数-该参数可以包含可变类型的数据。典型地,你使用它并通过POST方法把数据发送到服务器。另外,你可以显式地使 用null参数调用send()方法,这与不用参数调用它一样。对于大多数其它的数据类型,在调用send()方法之前,应该使用 setRequestHeader()方法(见后面的解释)先设置Content-Type头部。如果在send(data)方法中的data参数的类型 为DOMString,那么,数据将被编码为UTF-8。如果数据是Document类型,那么将使用由document.xmlEncoding指定的编码串行 化该数据。




 
XMLHttpRequest对象的ReadyState属性值列表。其实是根据响应(response.StatusCode)自己总结了5个状态,用以引发回调方法
2007年12月28日 星期五 18:58
ReadyState取值 描述
0
描述一种"未初始化"状态;此时,已经创建一个XMLHttpRequest对象,但是还没有初始化。
1
描述一种"发送"状态;此时,代码已经调用了XMLHttpRequest open()方法并且XMLHttpRequest已经准备好把一个请求发送到服务器。
2
描述一种"发送"状态;此时,已经通过send()方法把一个请求发送到服务器端,但是还没有收到一个响应。
3
描述一种"正在接收"状态;此时,已经接收到HTTP响应头部信息,但是消息体部分还没有完全接收结束。
4
描述一种"已加载"状态;此时,响应已经被完全接收。

posted on 2008-04-06 18:33  chl  阅读(261)  评论(0编辑  收藏  举报