【问题标题】:Make video private to my site users - wowza + wrench将视频设为对我的网站用户私有 - wowza + wrench
【发布时间】:2017-07-24 18:20:40
【问题描述】:

我有一个使用 Wowza Streaming Engine 4.1 的 ColdFusion 应用程序。我已经完成了通过 JW 播放器录制视频或音频和播放的所有集成。我正在使用 Wowza 的 VOD(视频点播)应用程序。

现在我想确保用户只能播放自己的视频。为此,我使用https://streamtoolbox.com/webservice-authentication-authorization

为此,它不需要数据库,因此我在 application.xml 文件属性部分添加了以下代码:

<!-- Example Application.xml part from the Properties and modules element -->

    <Modules>
        <Module>
            <Name>base</Name>
            <Description>Base</Description>
            <Class>com.wowza.wms.module.ModuleCore</Class>
        </Module>
        <Module>
            <Name>logging</Name>
            <Description>Client Logging</Description>
            <Class>com.wowza.wms.module.ModuleClientLogging</Class>
        </Module>
        <Module>
            <Name>flvplayback</Name>
            <Description>FLVPlayback</Description>
            <Class>com.wowza.wms.module.ModuleFLVPlayback</Class>
        </Module> 
        <Module>
          <Name>Wrench module</Name>
          <Description>A module for user authentication and much more</Description>
          <Class>com.streamtoolbox.Wrench</Class>
        </Module>
    </Modules>
    <!-- Properties defined here will be added to the IApplication.getProperties() and IApplicationInstance.getProperties() collections -->
    <Properties>
    <!-- Example Application.xml part from the Properties element -->
        <Property>
          <Name>wrench.db.driver</Name>
          <Value></Value> <!-- Setting to nothing to go into no-database mode -->
        </Property>
        <Property>
          <Name>wrench.token.resolver.url</Name>
          <Value>http://example.com/auth-token.cfm</Value>
          <!--Value>http://streamtoolbox.com/streaming/auth-nok.php</Value-->
        </Property>
        <Property>
          <Name>wrench.connect.authorization.url</Name>
          <Value>http://example.com/auth-ok.cfm</Value>
          <!--Value>http://streamtoolbox.com/streaming/auth-nok.php</Value-->
        </Property>
    </Properties>

我的 auth-ok CFM 文件只包含以下代码:

{"result": "allow"}

我的 auth-token CFM 文件只包含以下代码:

{"username":"john"}

我已经重新启动了 Wowza 应用程序并检查了视频,但是视频给出了以下错误:

Uncaught (in promise) DOMException: The play() request was interrupted by a call to pause()

我在 ColdFusion 中将文本记录到文件中,以查看它是否正在向 cfm 文件发送请求。但是什么也没找到。因此,我的 application.xml 文件似乎有任何问题,但运行不正常。

谁能告诉我我做错了什么?

【问题讨论】:

  • @Leigh 我刚刚更新了网址。我还使用了这个 url streamtoolbox.com/streaming/auth-ok.php,它给出了正确的响应。所以 URL 没有问题。是的,我尝试过不同的浏览器。
  • 我将删除我的 cmets,因为它们无助于回答问题。由于人们并不总是阅读 cmets,因此我建议将您的评论移至问题中(以提高知名度)。然后删除评论。

标签: video coldfusion wowza wrench


【解决方案1】:

在我看来,您没有使用wrench.token.resolver.url 配置令牌解析器网络服务(或者您也可以使用数据库),所以基本上发生的情况是连接进入,Wrench 没有定义的方式找出谁属于令牌,然后它不会调用授权网络服务,因为这需要传递用户名。您需要实现一个简单的 Web 服务,它返回令牌的用户名,格式如下 (more details in the docs):

{"username":"john"}

【讨论】:

  • @jabel,感谢您的回复。我进行了您提到的更改,但它仍然无法正常工作并更新有问题的 application.xml。你能告诉我我做得对吗?
  • 备案:玩家传入的查询不包含token,Wrench有正当理由拒绝连接
猜你喜欢
  • 2012-07-16
  • 1970-01-01
  • 2020-06-26
  • 2015-10-07
  • 1970-01-01
  • 1970-01-01
  • 2015-11-24
  • 2012-04-20
  • 1970-01-01
相关资源
最近更新 更多