我想在Asp.net中创建一个网页内的浏览器,以便我可以处理用户的点击事件(用于统计分析)。
我知道如何使用Winforms,但我需要一个完整的在线解决方案,以便:
提前致谢,并保持良好的工作。
答案 0 :(得分:3)
你想要收集的内容(基本上是点击的热图)是可行的,但我认为你想要的方式是不可行的。
尝试this。
我认为使用这种带框架等的解决方案比嵌入浏览器更可行(这相当于编写一个可以通过某种java / silverlight技术提供的浏览器,而不是无关紧要)。 / p>
另一个想法是,因为,我认为,您已获得用户的许可,可以跟踪他们的点击次数,根据我在上面提供的链接中的javascript编写一个greasemonkey(firefox插件)。然后,您可以让所有用户使用此插件脚本组合来为您提供点击次数。
答案 1 :(得分:1)
Web浏览器通常用于防止此类跨站点脚本漏洞。只有在您所有相关网站的全面合作下,这才是可行的。
答案 2 :(得分:0)
我不认为浏览器会允许你这样做,原因很简单,它会打开一大堆安全漏洞。如果你考虑一下,像这样设计的攻击网站就能跟踪网络上的人跟踪他们的行为,窃取密码等等,甚至不知道它在那里。
答案 3 :(得分:0)
对于网络应用来说,这并不是那么简单。
您的选择是:
您将无法像在桌面应用上那样制作“浏览器”控件,因为浏览器故意不允许网站功能强大。
对于“浏览器中的浏览器”效果,您可以使用 tag。请注意,如果源来自与其所包含的页面相同的域,则您将只能跟踪此iframe中的用户操作。
答案 4 :(得分:0)
客户端无法进行跨域脚本编写。出于安全原因,您甚至无法从指向某个地方的框架或iframe中读取,而不是从您自己的网站。
这里的解决方案可能是构建类似于着名的PHPProxy或PHPBrowser的东西,在本例中是“ASP.NET代理”。它的构建并不难,谷歌可以为这些小代码提供许多例子。
答案 5 :(得分:0)
虽然我怀疑你可以隐藏原始浏览器工具栏等,但你可以设置一个单独的页面来执行此操作(但它肯定不会处理所有内容)。
此页面将包含所需的按钮和文本框(以构成内部浏览器UI)和包含用户请求的页面的占位符。当然,占位符中包含的页面需要替换所有链接,以便可以跟踪它们(我会使用链接按钮)。我不确定提交表单的效果如何。
如果我控制了电脑,我个人会使用代理。