从ASP访问sharepoint Web服务

从ASP访问sharepoint Web服务,sharepoint,asp-classic,Sharepoint,Asp Classic,我想从经典ASP页面访问sharepoint列表Web服务。我正在创建soapxml格式并尝试调用webservice url,如下所示 Dim http ,soap soap = "<?xml version='1.0' encoding='utf-8'?>" soap =soap & "<soap12:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://w

我想从经典ASP页面访问sharepoint列表Web服务。我正在创建soapxml格式并尝试调用webservice url,如下所示

Dim http ,soap

soap = "<?xml version='1.0' encoding='utf-8'?>"
soap =soap & "<soap12:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap12='http://www.w3.org/2003/05/soap-envelope'>"
soap =soap & "<soap12:Body>"
soap =soap & "<GetListItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'>"
soap =soap & "<listName>Posts</listName>"
soap =soap & "<viewName></viewName>"
soap =soap & "<query></query>"
soap =soap & "<ViewFields><FieldRef Name='Title' /><FieldRef Name='Modified'/><FieldRef Name='DefaultViewUrl'/><FieldRef Name='ID'/><FieldRef Name='Author'/><FieldRef Name='Name'/><FieldRef Name='Body'/><FieldRef Name='NumComments'/><FieldRef Name='DefaultViewUrl'/></ViewFields>"
soap =soap & "<rowLimit>5</rowLimit>"
soap =soap & "<QueryOptions><IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns><DateInUtc>FALSE</DateInUtc></QueryOptions>"
soap =soap & "</GetListItems>"
soap =soap & "</soap12:Body>"
soap =soap & "</soap12:Envelope>"

Set http = CreateObject("MSXML2.XMLHTTP")
http.Open "POST", URL, False
http.setRequestHeader "Content-Type", "application/soap+xml;  charset=utf-8"
http.send(soap)
dimhttp,soap
soap=“”
soap=soap&“
soap=soap&“
soap=soap&“
soap=soap和“Posts”
soap=soap&“
soap=soap&“
soap=soap&“
soap=soap和“5”
soap=soap&“FALSEFALSE”
soap=soap&“
soap=soap&“
soap=soap&“
设置http=CreateObject(“MSXML2.XMLHTTP”)
http.Open“POST”,URL,False
http.setRequestHeader“内容类型”,“应用程序/soap+xml;字符集=utf-8”
http.send(soap)
但我收到的错误类似于“处理URL时服务器上发生错误。请与系统管理员联系。”。 如果您是系统管理员…”


我是否需要通过任何身份验证或其他问题?

如果您不在SharePoint网站下,问题是您的访问被拒绝。SharePoint需要cookie或NTLM授权才能执行此操作

你能再传一点吗

大卫·斯特林 斯特林国际咨询集团 Davidsterling.blogspot.com
www.sharepoint-blog.com

您要发布到的URL是什么?您不需要共享主机名,但需要共享路径的其余部分。这是我正在使用的url,“Blogs/_vti_bin/Lists.asmx”,可能缺少身份验证。您不能以匿名用户身份访问SharePoint API。您可以为SharePoint使用ADO连接器。将其与WCF服务(如Camelot SharePoint集成服务)相结合,您将很快启动并运行ASP Classic集成。您好,我知道这篇文章现在已经过时了,但只想使用COM+粘贴ASP Classic->SharePoint的链接。在进行任何身份验证之前,您应该添加SOAPAction标头,该标头用于标识您要调用的方法。当我尝试通过Javascript访问sharepoint Web服务时,我得到了结果,但问题是它会提示一条消息,如“此页面正在访问不受其控制的信息”。(因为它是跨域访问。)“。我不想显示弹出窗口,所以我正在尝试访问服务器端的Web服务。