编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

Phantomjs遇上Flash怎么搞?(苏州这边有什么山可以爬)

wxchong 2024-09-03 02:15:13 开源技术 10 ℃ 0 评论

问题描述:

当需要使用浏览器的Flash功能进行一些文件上传(尤其是多文件)和在线编辑的时候,会发现,Phantomjs竟然不支持Flash,那怎么搞?

问题原因:

Phantomjs在版本1.9之后就移除了对Flash的内置支持,是为了让Phantomjs更加的符合无头测试的身份,因为Flash需要插件级别的支持,而服务器上往往是没有浏览器在运行的,所以我们只能通过其他方式解决。

使用场景:

此类问题有两种具体使用场景:

  • 场景一:

当使用Phantomjs模拟用户提交数据的时候,服务器端只是通过检测请求头部来判断浏览器对Flash的支持性,浏览器的原生功能并没有依赖Flash实现。

解决办法:

模拟浏览器头部信息,使用伪造头部提交,骗过浏览器。Nodejs的环境之下可以使用phantomjs-flash(取自Github)来完成该功能。

  • 场景二:

当确实会用到Flash的功能来进行文件上传之类操作

解决办法:

该种办法之下,无法再继续使用伪造头部信息来完成需求,此时我们需要结合

Slimerjs来进行Flash功能的使用,具体请参看http://www.slimerjs.org/


Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表