Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我是否可以在外部网站上嵌入视频,同时仍使用令牌保护内容?_Php_Javascript_Ajax_Flash - Fatal编程技术网

Php 我是否可以在外部网站上嵌入视频,同时仍使用令牌保护内容?

Php 我是否可以在外部网站上嵌入视频,同时仍使用令牌保护内容?,php,javascript,ajax,flash,Php,Javascript,Ajax,Flash,在我们自己的网站上,在开始下载文件之前,通过AJAX抓取令牌并通过PHP验证令牌,很容易防止直接链接到我们的视频内容 然而,我也在研究如何在不影响安全性的情况下提供嵌入式功能,如YouTube或vimeo等 问题是我想要提供的嵌入代码应该看起来像…——但我不知道如何获取标记并将其附加到文件名。我的意思是,我想我可以附加一个脚本来做一些粗糙的JNOP业务,但那太脏了 我将JW播放器用于实际的视频容器 非常感谢所有能够帮助您的人……您可以不用代币完成这项工作。首先,根本不允许直接链接到您的视频。将它

在我们自己的网站上,在开始下载文件之前,通过AJAX抓取令牌并通过PHP验证令牌,很容易防止直接链接到我们的视频内容

然而,我也在研究如何在不影响安全性的情况下提供嵌入式功能,如YouTube或vimeo等

问题是我想要提供的嵌入代码应该看起来像
——但我不知道如何获取标记并将其附加到文件名。我的意思是,我想我可以附加一个脚本来做一些粗糙的JNOP业务,但那太脏了

我将JW播放器用于实际的视频容器


非常感谢所有能够帮助您的人……

您可以不用代币完成这项工作。首先,根本不允许直接链接到您的视频。将它们放在文档根目录之外

现在创建一个包装函数,检查是否允许用户下载它。您可以在下载页面上设置5分钟后过期的cookie或会话参数。包装器只是检查是否已设置。如果是这样,则读取swf并将其发送给具有适当标题的用户*

现在您在
标签中链接到/path/viewSwf?id=123,一切都很好

*如果视频很长,您可能需要将php超时设置为更大的值。

执行以下操作:

  • 使嵌入脚本指向您的服务器
  • 请求脚本时,生成一个令牌并将其保存在数据库中,然后将其输出到脚本中
  • 让脚本打印出嵌入标记,其中的标记作为参数

  • 好了。

    当然。。。这就是我正在做的。视频位于文档根目录下。然后,如果您转到
    /watch?ts=1234567890&video=filename.mov.mp4
    (PHP),它会根据
    ts
    参数检查
    if(!(isset($\u REQUEST['ts'))和&isset($\u COOKIE['token')&&$\u COOKIE['token']=md5(SALT\u HASH.$\u REQUEST['ts'))die('Fail')
    以更好地说明问题:如何在外部服务器上设置cookie,而无需任何超出
    /
    的内容?这似乎是不可能的。这就是问题所在:“打电话回家并获得一次性使用令牌。”如果打电话回家涉及SWF播放器中的动作脚本,那么我就不走运了。(在我们自己的网站上,在嵌入视频之前,我们使用AJAX获取令牌。)为什么你不能修改播放器?我想我可以:)只是不希望必须使用/学习Flash。可能是一个长期项目。感谢您的帮助。或者,让嵌入代码成为一个javascript thinger,调用home,并打印包含令牌的嵌入代码。或者,在调用javascript脚本时,生成令牌。是的,那正是我最后要做的。嵌入代码是一个
    。。。当请求脚本时,我使用PHP的
    文件\u get\u contents()
    将令牌“注入”到脚本中。我选择不使用XHR,只是因为与PHP解决方案相比,它会增加很多开销。再次感谢。