【问题标题】:Accessing sharepoint webservice from ASP从 ASP 访问 sharepoint webservice
【发布时间】:2011-11-18 23:11:03
【问题描述】:

我想从经典的 ASP 页面访问共享点列表 web 服务。我正在创建soap xml格式并尝试调用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)

但我收到类似“处理 URL 时服务器发生错误。请联系系统管理员。 如果你是系统管理员……”

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

【问题讨论】:

  • 您发帖的网址是什么?您不需要共享主机名,而是路径的其余部分。
  • 这是我使用的网址,“Blogs/_vti_bin/Lists.asmx”
  • 这可能是缺少身份验证。您不能以匿名用户身份访问 SharePoint API。您可以使用适用于 SharePoint 的 ADO 连接器 bendsoft.com/net-sharepoint-connector。将它与诸如 Camelot SharePoint 集成服务之类的 WCF 服务相结合,您将立即启动并运行您的 ASP Classic 集成。
  • 嗨知道这篇文章现在已经过时了,但只是想粘贴一个 ASP 经典 -> 使用 COM+ 的 SharePoint 的链接。 blog.bendsoft.com/2012/09/….
  • 在任何身份验证之前,您应该添加 SOAPAction 标头,该标头是标识您要调用的方法所必需的

标签: sharepoint asp-classic


【解决方案1】:

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

你能再转述一点吗?

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

【讨论】:

  • 当我尝试通过 Javascript 访问共享点网络服务时,我得到了结果,但问题是它提示类似“此页面正在访问不受其控制的信息。(因为它是跨域访问。)”。我不想显示该弹出窗口,所以我正在尝试访问服务器端的网络服务。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-07
  • 2016-02-19
  • 2019-03-02
  • 2010-09-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多