top
Loading...
SQL2005中如何建立HTTP的端點

SQL2005提供了一個新的執行存儲過程或者T-SQL的方法,它可以以WEB服務的方式發布到服務器上,而無須使用IIS 這個新特點通過HTTP API把HTTP端點暴露給用戶,在WINXP SP2和WIN2003上被支持
建立一個HTTP端點是非常簡單的,如下:

CREATE ENDPOINT MyEndpoint?STATE = STARTEDAS HTTP (  AUTHENTICATION = (INTEGRATED),  PATH = '/sql/myendpoint',  PORTS = (CLEAR) )FOR SOAP (  BATCHES = ENABLED,  WSDL = DEFAULT)

在上面的案例中我建立一個命名為MyEndpoint的端點,它在http://localhost/sql/myendpoint監聽T-SQL語句,你可以使用下面URL測試它
 http://localhost/sql/myendpoint?wsdl.
上面這個URL還可以附加很豐富的參數,具體參見SQL幫助
下面這個例子顯示如何通過JAVSCRIPT來調用端點執行T-SQL語句,如下:

function SendBatchRequest( strServerName, strUrlPath, strQuery ){   var objXmlHttp = null;   var strRequest = "";   objXmlHttp = new ActiveXObject( "microsoft.xmlhttp" );   objXmlHttp.open( "POST", "http://" + strServerName + strUrlPath, false );   objXmlHttp.setrequestheader( "Content-Type", "text/xml" );   objXmlHttp.setRequestHeader( "Host", strServerName );   strRequest = "                                                                                                   " + strQuery + "                                                                                       ";   objXmlHttp.send( strRequest );   if( objXmlHttp.status == 200 )      return objXmlHttp.responseXML.xml;   else      return "";}var response = SendBatchRequest( 'localhost', '/sql/myendpoint', 'Select * from sys.http_endpoints' );

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗