当前位置:首页 > 技术与方案 > 数据库技术相关

在SQL Server2005中建立HTTP的端点

(2012-09-25 16:09:31)

       SQL Server2005提供了一个新的执行存储过程或者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测试它

 

上面这个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 = "<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'xmlns:sql='http://schemas.microsoft.com/sqlserver/2004/SOAP'><SOAP-ENV:Body><sql:sqlbatch><sql:BatchCommands>" + strQuery + "</sql:BatchCommands></sql:sqlbatch></SOAP-ENV:Body></SOAP-ENV:Envelope>"; objXmlHttp.send( strRequest ); if( objXmlHttp.status == 200 )return objXmlHttp.responseXML.xml; elsereturn ""; }var response = SendBatchRequest( 'localhost', '/sql/myendpoint', 'Select * from sys.http_endpoints' )

 

更多
关闭窗口 打印 
网站首页    -    联系我们    -   收藏本站    -    网站地图                                                               客户服务热线:0571-85023000
本网站所有网页信息已申请知识产权和著作权保护,版权归四海光纤公司所有,未经授权禁止任何人复制或镜像,违者必究。
公司主营:杭州光纤光缆视频会议系统,是专业的通信网络工程、视频会议系统建设专家

中华人民共和国备案号:浙ICP备10018243号