【问题标题】:Why do my apostrophe-oembed Vimeo requests fail in hosted environment?为什么我的撇号嵌入 Vimeo 请求在托管环境中失败?
【发布时间】:2020-04-02 21:49:37
【问题描述】:

我已经尝试过几次深入研究这个问题,但还没有时间完全解决它。 问题是:在 Google Cloud Platform 上部署时,我无法嵌入新视频、编辑视频或查看已嵌入视频的正确预览。我得到了 Red X。在本地运行一切正常。目前我必须在本地运行该应用程序才能编辑或将任何视频添加到我的网站。

我所看到的:部署时,此 url 将返回 404 /modules/apostrophe-oembed/query 我省略了域和查询参数,但相同的 url 在本地运行时工作得很好。

调试起来相当困难,因为当我可以修改它时代码运行良好。 如果有任何后果,这主要是针对 Vimeo 视频。

【问题讨论】:

  • 您能否包含发生这种情况时获得的完整错误/堆栈跟踪?
  • 如果 URL 是 404,则可能不会更多。网络面板中的其他 API 调用 URL 是什么样的?您是否有可能在此前缀中缺少站点范围的前缀?主机名错误?正如歌曲所唱的那样,它与其他任何其他方式不同吗?
  • @TomBoutell 可能是,为撇号设置的主机名在哪里?其他一切似乎都很好。请注意,这用作无头 cms,但这是其中一个页面的链接,您可以打开网络面板并查看 404:cms.godfreydadich.com/work/symantec
  • 我在询问其他 API 请求的 URL,例如您在同一页面上编辑时创建的那些 Apostrophe,与 oembed 请求的 URL 进行比较。也许这个问题会解决一个更大的问题,例如根本无法登录和编辑......
  • @TomBoutell 对工作流和富文本等模块的所有其他 API 请求似乎都可以正常工作。登录工作.. 几乎所有其他工作。

标签: vimeo apostrophe-cms oembed


【解决方案1】:

经过大量调试后,我发现 Vimeo 不喜欢网站抓取工具。他们最终阻止了定期抓取其页面的应用程序的域。这就是oembetter 获取 oembed 端点 url 的方式。解决此问题的方法是在 app.js 中进行简单配置。

在模块块中,将其放在配置列表中:

'apostrophe-oembed': {
   endpoints: [
        { domain: 'vimeo.com', endpoint: 'https://vimeo.com/api/oembed.json' }
      ]     
    },

这不再需要 oembetter 抓取页面,它直接进入 vimeo 的 oembed 端点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-14
    • 1970-01-01
    • 1970-01-01
    • 2019-04-24
    • 1970-01-01
    • 1970-01-01
    • 2014-10-19
    • 1970-01-01
    相关资源
    最近更新 更多