背景:
我们目前有一个现有的应用程序可以从EPRINTS存储库中检索数据,但其中一个新客户端正在使用DSPACE存储库。
根据我的注意,浏览时EPRINT的查询URL提供了XML类型,例如:
大学eprints域名?_action_export = 1& output = RSS2& exp = 0%7c1%7c-date%2fcreators_name%2ftitle%7carchive%7c-%7cq%3a_fulltext_%2fabstract%2fcreators_name%2fdate%2fdocuments%2feditors_name%2ftitle% 3aALL%3aIN%3amusic%7C-%7ceprint_status%3aeprint_status%3aANY%3aEQ%3aarchive%7cmetadata_visibility%3ametadata_visibility%3aANY%3aEQ%3ashow
现在,我想从DSPACE存储库中检索数据。如何创建查询URL? 这是我正在使用的现有代码:
var client = new HttpClient();
var stream = await client.GetStreamAsync(url);
var XmlReaderSettings_ = new XmlReaderSettings();
XmlReaderSettings_.XmlResolver = null;
XmlReaderSettings_.DtdProcessing = DtdProcessing.Parse;
using (var xr = XmlReader.Create(stream, XmlReaderSettings_))
{
var feed = SyndicationFeed.Load(xr);
return feed.Items.ToList();
}
答案 0 :(得分:2)
如果您在DSpace网站上查看页面源,则RSS和开放搜索URL应该在源代码中可用。
<link type="application/rss+xml" rel="alternate" href="/feed/rss_1.0/site" />
<link type="application/rss+xml" rel="alternate" href="/feed/rss_2.0/site" />
<link type="application/atom+xml" rel="alternate" href="/feed/atom_1.0/site" />
<link type="application/opensearchdescription+xml" rel="search" href="https://siteid:443/open-search/description.xml" title="DSpace" />