我开发了一个Web应用程序,每个用户都可以使用提供的小部件创建自己的页面,disqus api是其中的一种。我试图将disqus api http://docs.disqus.com/developers/universal/用于该网站,但是我有点困惑,或者我可以说不能做几件事,让我用一个场景来解释一下。假设用户A来在其页面中添加disqus小部件,并且他可以通过说“www.domain.com/xxx”的URL访问其页面,在此他可以使用其Disqus小部件,我使用的是通用api,但我想我需要动态更新disqus_identifier以及disqus_url。如何为不同的用户或多个用户动态地执行此操作。
请帮我
最佳答案
嵌入Disqus不需要disqus_identifier
和disqus_url
参数。但是,根据您要寻找的功能(问题尚不清楚),您可能需要它们来满足您的要求。
由于您的页面是由小部件组成的,因此我认为没有“永久链接” URL可以链接到Disqus小部件。因此,我建议您完全不要设置disqus_url
参数。 (通过不设置此参数,disqus将自行找出合适的URL。)
用来设置disqus_identifier
的方法将确定新的Disqus线程如何以及何时出现在窗口小部件中。如果希望每个用户在其小部件中看到唯一的Disqus线程,请将disqus_identifier
设置为该用户的ID。在JSP中,这可能类似于以下内容(但实际实现完全取决于您的唯一应用程序)。
// ...
%>
<div id="disqus_thread"></div>
<script type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_shortname = 'example'; // required: replace example with your forum shortname
// The following are highly recommended additional parameters. Remove the slashes in front to use.
var disqus_identifier = '<%=currentUser.getID()%>';
// var disqus_url = 'http://example.com/permalink-to-page.html';
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<%