基本上,我有一个List,将由用户维护,其中包含一个包含指向RSS提要的链接的字段。我正在寻找一个Sharepoint Webpart,它可以查询RSS提要URL的列表,然后显示它
我尝试过使用OOTB RSS,它很棒,但您必须指定供稿网址,并且我需要基于用户选择。例如,用户将从列表中选择他们想要查看的供稿,这应该将它们带到供稿阅读器页面,该页面将使用他们的选择来获取供稿URL并将其显示在页面上。
基本上,我有一个List,将由用户维护,其中包含一个包含指向RSS提要的链接的字段。我正在寻找一个Sharepoint Webpart,它可以查询RSS提要URL的列表,然后显示它
我尝试过使用OOTB RSS,它很棒,但您必须指定供稿网址,并且我需要基于用户选择。例如,用户将从列表中选择他们想要查看的供稿,这应该将它们带到供稿阅读器页面,该页面将使用他们的选择来获取供稿URL并将其显示在页面上。
另一种不是一般的Sharepoint解决方案是使用jQuery。
该列表在页面上可见吗?还是仅仅是Sharepoint中的列表?
当然你可能需要某种代理才能调用rss-feeds,如果它们被放置在另一台服务器上。但你会发送到客户端的性能,而不是服务器,这是一个加号。
我的解决方案是使用WebPartPages Web服务(SaveWebPart)更改Web部件的定义,以使用新的提要URL点击Feed。
我创建了一个javascript函数,它将接受提要URL并进入显示提要的页面。直到下次访问该页面时才会加载新的订阅源,因此如果您已经在其上,则需要重新加载,因此需要重定向。
有关请求格式和Web部件XML格式的更多信息,请参阅以下页面。 http://msdn.microsoft.com/en-us/library/ms774839%28v=office.12%29.aspx
function SetFeed(feedURL){
var webPartGUID = $("#<WebPartID>").attr('webpartid');
// This is where you set the page URL, Full Web Part XML (including path to FEED),
// storageKey (webPart GUID), and storage type (none, personal, shared)
var soapEnv = "<FULL SOAP XML>";
jQuery.ajax({
url: "http://<SITE PATH>/_vti_bin/WebPartPages.asmx",
type: "POST",
dataType: "xml",
data: soapEnv,
beforeSend: function(xhr) {
xhr.setRequestHeader("SOAPAction",
"http://microsoft.com/sharepoint/webpartpages/SaveWebPart")
},
complete: function(xData, status){
window.location='REDIRECT TO FEED PAGE';
},
contentType: "text/xml;charset='utf-8'"
});
}
这可能与我们的产品[赛末点(http://www.colygon.com)来完成。 MatchPoint是SharePoint的应用程序框架。其中一个特性是[连接框架](http://www.colygon.com/technical-features/service- layer-and-api/connection-framework),它简化并改进了Web部件连接。 – Stefan