0

我正在尝试为 Sharepoint 2007 开发一个小工具,它将对用户进行身份验证,然后从特定 URL 获取他的共享点列表,

在过去的 4 天里,我一直在研究它并遇到了不同的制作方法,但是因为解决方案要么完成了一半,要么不工作,要么太混乱而无法获得帮助或转换成我想要的东西。

因为 Windows Gadget 使用 Scripting + HTML,所以我有以下选项可以继续制作这个小工具,

  • 创建一个 Visual Studio 项目 (dll),它将使用 Sharepoint 的 SPLIST/SPWeb 为我获取列表,然后我可以使用 JavaScript 和 Visual Studio“COM”来读取该 dll(“类”)并在 JavaScript 中获取数据并显示它在 HTML 上。这种方法的问题是,我不确定,如果我使用 Sharepoint SPLIST 创建一个“dll”并将其放入小工具文件夹中,它是否可以在客户端上运行(那里的 PC 上没有安装 sharepoint)。在尝试寻求有关此问题解决方法的帮助时,我发现这个项目正在做同样的事情,但不确定我是否对其进行了更改,它将与我之前谈到的“dll”一起使用,这里是链接小工具,

Gmail Gadget 使用 JavaScript 读取 Visual Studio Dll

  • 解决问题的第二种方法是,如果我使用 Sharepoint webservices,那将获得所有列表项,但是在 JavaScript 中使用 Webservices 并不是那么容易,所以如果我创建一个 Visual Studio 项目,获取一个 web 参考sharepoint webservices,并返回一个列表,我再次使用 JavaScript 从 DLL 中读取结果,并将它们显示在 HTML 上。

此链接在 Dot Net 项目中使用 Web 服务来更新列表项,但在评论中它还告诉了如何获取列表数据,然后我将如何验证我的用户

  • 另一种解决方案是使用 Jquery 来获取共享点列表数据,就像之前的链接一样,但同样,我怎样才能验证我的用户@小工具?

使用 jQuery 获取列表数据

一个从网站获取新闻提要的小工具,它发送 HTTPxml 请求,但随后要求提供 RSS 提要,而我正在处理的 sharepoint 站点中没有 Rss 反馈

阅读这篇文章我希望你能增加你的知识或分享它:)

编辑 *我的意思是使用 Sharepoint MOSS“SPLIST”或“SPWEB”作为客户端对象模型,因为我使用 Moss 我不能使用客户端对象模型身份验证:(。真的很抱歉错误信息*

4

2 回答 2

1

如果您负担得起使用您的小工具部署 COM 组件,那么第一种方法将起作用。您将逻辑包装在 CCW .NET 类的外观中(使用 .NET SP 客户端 OM)并通过 regasm 将其注册为 COM。所有纯 .NET,您的类将被声明(和编写)COM 兼容。

稍后您可能会发现第二种方法过于局限;SP ClOM 支持比 SP WS 更多的功能。把 jQuery 扔进去并没有太大的改变。(不幸的是,SP JS ClOM 只能在 SP 页面上使用;不能在小工具中使用。)

如果你走痛苦的路(JS ;-) IWA 应该给你(Windows)SSO 身份验证。如果您从 DLL 调用 SP ClOM,您可以重用当前用户 (SSO) 的 Windows 会话令牌,或者如果用户愿意,可以通过您的表单进行显式身份验证。(您也可以以与 Windows 不同的用户身份登录 SP UI。)两者都受支持

我首先尝试 DLL 方法。

更新:糟糕,您使用的是 SP 2007,而不是 2010 - 没有 SP ClOM。我应该早点注意到,抱歉...不过,您可以创建一个 .NET DLL,它可以通过 WS 与 SP 对话。您仍然可以设置DefaultNetworkCredentialsHttpWebRequest.Credentials(REST) 或.CredentialsWS 客户端类 (SOAP) 以获取 SSO 身份验证。NetworkCredential或者使用名称和密码创建您自己的。

--- 费尔达

于 2012-05-18T11:02:34.453 回答
1

您将其安装在用户 PC 上,因此您无法使用标准 SharePoint API (Microsoft.SharePoint.dll)

您使用的是 2007,因此您不能使用“客户端对象模型”(托管/silverlight 或 EMCA 脚本)

那离开

a) SharePoint Web 服务(JavaScript 或仍然是 JavaScript 的 JQuery)。

这意味着您的小工具将通过与浏览您的网站的人相同的机制向 SharePoint 进行身份验证 - 通常是集成的 Windows 身份验证。

首先是优秀的 ht​​tp ://spservices.codeplex.com/库,它允许您轻松地从 JQuery 调用 Web 服务)。有关如何使用它的提示,请参阅文档。

对于一个完成了一半的项目, http://sharepointsidebar.codeplex.com/怎么样

b) Create your own custom web services by deploying a dll on the SharePoint server then call those via JavaScript (perhaps usign JSON or similar rather

于 2012-05-18T11:54:26.973 回答