V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Chigogo
V2EX  ›  问与答

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

  •  
  •   Chigogo · Nov 26, 2017 · 1950 views
    This topic created in 3074 days ago, the information mentioned may be changed or developed.

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

    需求是这样的:

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

    Chrome 跨域报错:

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

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