【问题标题】:How do I import react as a cdn?如何将 react 作为 cdn 导入?
【发布时间】:2019-07-14 10:06:30
【问题描述】:

我刚刚检查了一个曾经运行良好的网站,并注意到我现在在我的 React CDN 上遇到了 CORS 错误。该站点是https://timothytolley.com/ 以供参考错误。我使用了 React Docs 中建议的脚本。

作为背景知识,我正在使用 webpack 进行编译,并为我的服务器使用 node 和 express。

错误:

CORS 策略已阻止从源“https://timothytolley.com”访问“https://unpkg.com/react@16.7.0/umd/react.production.min.js”处的脚本(从“https://unpkg.com/react@16/umd/react.production.min.js”重定向):没有“Access-Control-Allow-Origin”标头出现在请求的资源。

任何建议都会很棒,

干杯!

【问题讨论】:

标签: reactjs cdn


【解决方案1】:

遇到了同样的问题,我认为这是 unpkg 本身的问题。在提供 16.7 版时,它们缺少 access-control-allow-origin 标头。 unpkg 上托管的旧版本具有此功能,因此这可能是最近上传文件的 derp。

与此同时,您还可以尝试其他 cdn,例如 cloudflare:

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.7.0/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.7.0/umd/react-dom.production.min.js"></script>

【讨论】:

    【解决方案2】:

    我不知道这个问题是什么原因,但是我在更改时解决了 &lt;script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"&gt;&lt;/script&gt;

    <script crossorigin src="https://unpkg.com/react-dom@16.3/umd/react-dom.production.min.js"></script>
    

    【讨论】:

      【解决方案3】:

      如果某些 URL 显示 Access-Control-Allow-Origin 标头而其他 URL 没有,则表明缓存层或其 CDN 提供商可能已更改其代理使用 CORS 的方式存在问题。

      要快速解决问题,您可以尝试其他React CDN

      <script src="https://pagecdn.io/lib/react/16.8.6/umd/react.production.min.js" integrity="sha256-3vo65ZXn5pfsCfGM5H55X+SmwJHBlyNHPwRmWAPgJnM=" crossorigin="anonymous"></script>
      <script src="https://pagecdn.io/lib/react-dom/16.8.6/umd/react-dom.production.min.js" integrity="sha256-qVsF1ftL3vUq8RFOLwPnKimXOLo72xguDliIxeffHRc=" crossorigin="anonymous"></script>
      

      在任何情况下,请确保您始终使用带有integrity 哈希的&lt;script&gt; 标签以获得最大的安全性。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-12-29
        • 2018-05-09
        • 2019-08-12
        • 2017-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多