V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Chigogo
V2EX  ›  问与答

如何在各家视频网站,同时上传视频?

  •  
  •   Chigogo · 2017-11-26 12:37:29 +08:00 · 1601 次点击
    这是一个创建于 2545 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用本地 html 嵌入 iframe 的方法,没想到跨域的问题。

    需求是这样的:

    写好视频信息(标题、标签、视频说明)后,同步更新到各家网站的投稿页面,比如哔哩哔哩和腾讯视频。

    Chrome 跨域报错:

    Blocked a frame with origin "null" from accessing a cross-origin frame.

    8 条回复    2017-11-28 20:23:38 +08:00
    xmcp
        1
    xmcp  
       2017-11-26 13:47:11 +08:00 via iPhone
    后端收到视频后代为上传。
    别想着前端实现了。想绕过浏览器的跨域限制基本不可能的。
    coolcoffee
        2
    coolcoffee  
       2017-11-26 13:50:10 +08:00
    如果仅仅是你自己的浏览器,可以考虑关闭跨源限制。 如果想要公开,还是考虑客户端或者服务端吧
    gamexg
        3
    gamexg  
       2017-11-26 15:16:15 +08:00
    做成浏览器插件。
    Chigogo
        4
    Chigogo  
    OP
       2017-11-26 21:33:29 +08:00
    @xmcp 提供 API 的,只知道 Youtube,不利于做成公开的软件。
    @coolcoffee 看过关闭跨源限制,不利于公开发布。( FireFox 貌似方便点)
    @gamexg 看来只能这样了。
    Chigogo
        5
    Chigogo  
    OP
       2017-11-27 00:59:49 +08:00
    @gamexg 浏览器插件试了一下,content.js 无法突破 iframe 的跨域问题。看来只能一个页面一个页面的循环了。
    gamexg
        6
    gamexg  
       2017-11-27 03:56:43 +08:00 via Android
    @Chigogo 对框架子页面也注入 js,然后用 postMessage 或 window.name
    扩展也有 tabs.connect 等函数可用。
    xmcp
        7
    xmcp  
       2017-11-27 12:40:58 +08:00 via iPhone
    @Chigogo @gamexg
    Background Script 只要申请了权限就不受跨域约束,Content Script 把请求传给 Background Script 就行了。
    Chigogo
        8
    Chigogo  
    OP
       2017-11-28 20:23:38 +08:00
    @gamexg iframe 如果非要跨域,不改变浏览器启动参数的话,貌似只能走扩展的方法。在 tab 里面操作。
    @xmcp tab executeScript 方法,貌似不一定用到 ContentScript
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1090 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:41 · PVG 06:41 · LAX 14:41 · JFK 17:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.