【问题标题】:How to validate entered embed video (youtube, vimeo) code by user?如何验证用户输入的嵌入视频(youtube、vimeo)代码?
【发布时间】:2013-07-13 15:49:11
【问题描述】:

我有一个控件,允许从 Youtube 或 Vimeo 输入嵌入视频代码。验证用户输入数据以防止代码注入攻击的最佳方法是什么?

PS:我不想存储模板并只允许用户输入 URL。视频服务可以随时更改其 API。

【问题讨论】:

    标签: javascript html youtube-api vimeo


    【解决方案1】:

    在我看来,您的逻辑可能并不完全正确(因为如果您害怕视频服务随时更改其 API,那么您应该同样害怕(如果不是更多)同样的视频服务会更改他们的嵌入格式),这可能是一个两步过程。

    1) 验证输入的是受信任的 HTML(如何执行此操作将完全取决于您的实现...例如,在 javascript 中执行此操作与在 Python、PHP 后端执行此操作有很大不同, 任何)。如果您提供有关设置的更多详细信息,您可能会获得更有针对性的响应。可能您最终会得到 RegEx 解决方案或基于解析器的解决方案(例如,我使用 Beautiful Soup 来进行 Python 标记验证、清理和排除)。

    2) 验证您已收到视频源的可用数据——这也可以是正则表达式,但您可能想要获取属性值并进行快速 API 调用(例如,对 Youtube 视频列表端点)以确保您得到有效的响应。

    【讨论】:

      猜你喜欢
      • 2012-03-20
      • 1970-01-01
      • 2014-04-04
      • 2018-03-10
      • 1970-01-01
      • 1970-01-01
      • 2012-08-13
      • 2012-09-03
      • 2015-02-16
      相关资源
      最近更新 更多