Content Provider Like Jabbr

问题描述:

基本思路是,如果我从你的管道添加网址到我的聊天,它会从YouTube获取内容并在聊天窗口本身显示视频。Content Provider Like Jabbr

我如何获得内容提供者,如Jabbr甚至像Gmail或Facebook。有没有一个已知的JS库或标准函数来完成这个? 我看了一下Jabbr代码,它已经在服务器端完成了,并且不能用于页面刷新。

我正在寻找任何资源,你可以指点我可以帮助我开始。 我期待添加像Youtube.com,twitter等不同的内容提供商到我的聊天。

+1

当你找到答案时,我会在jabbr中使用它:) – davidfowl 2013-03-17 07:24:53

+0

看起来像我将不得不写我自己的JS – 2013-03-17 16:03:45

我还没有找到任何预制库来做到这一点。但是推出自己的产品还不错, jQuery代码自动注入一个YouTube视频可能是这样的:

urls = text.match(/http:\/\/www.youtube.com\/watch\?.*v\=([^\?\&]+)/); 

if (urls) { 
    $("#chatbox").prepend('<div class="entry"><iframe title="YouTube video player" class="youtube-player" type="text/html" width="320" height="240" src="http://www.youtube.com/embed/' + urls[1] + '" frameborder="0" allowFullScreen></iframe></div>'); 
    return; 
} 

看看这个例子捣鼓这表明了效果:example。作为另一个例子,它也匹配简单的链接。为了扩展这个概念,你只需要弄清楚你想要匹配什么类型的输入(例如,像我的例子中的正则表达式),以及你需要注入什么代码(例如,YouTube嵌入iframe)。

您应该小心谨慎地测试表达式和注入,以免让用户注入恶意代码。

+0

由于他提到asp.net mvc,他可能会更好地让服务器处理解析URL。只需将值传递给System.Uri类就足以至少确定一个字符串是否是有效的url。他还能够迅速取消XSS和其他内容,甚至禁止某些链接。 – rossisdead 2013-04-04 20:50:56