加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 从多个CDN位置创建脚本包

发布时间:2020-12-15 17:37:09 所属栏目:百科 来源:网络整理
导读:假设我们的应用程序处于离线状态,即我们无法使用第三方CDN,因此我们正在创建自己的CDN. 我想在单独的(Parent)Web应用程序中托管所有供应商脚本,然后将它们包含在其他几个MVC应用程序的捆绑包中. 例如 http://localhost/parentWeb/Scripts/jquery.js http:/
假设我们的应用程序处于离线状态,即我们无法使用第三方CDN,因此我们正在创建自己的CDN.
我想在单独的(Parent)Web应用程序中托管所有供应商脚本,然后将它们包含在其他几个MVC应用程序的捆绑包中.

例如

> http://localhost/parentWeb/Scripts/jquery.js
> http://localhost/parentWeb/Scripts/jquery-ui.js
> http://localhost/parentWeb/Scripts/globalize.js

我想包括在ASP.NET MVC App网站,位于:http:// localhost / parentWeb / childWeb

就是这样做:

bundles.UseCdn = true;
bundles.Add(
    new ScriptBundle(
        "~/bundles/VendorScripts","http://localhost/parentWeb/Scripts/jquery.js","http://localhost/parentWeb/Scripts/jquery-ui.js","http://localhost/parentWeb/Scripts/globalize.js"));

…当然当然不可能.有没有很好的解决方法?

解决方法

您不能捆绑外部资源.如果你想到这一点,那么这是有道理的.这将需要捆绑器实际下载资源并将其保存到文件系统,然后才能使用它,当然如果外部资源无法达到,则会以某种方式异步执行.而且,在每个页面加载时都必须这样做,因为它不能先检索lastmod(因此知道它是否真的需要重新分组).

如果您使用CDN资源,则捆绑程序仅将该URL直接打印到该页面;它没有做任何修改.即使这样,它只允许您创建一个仅一个URL的“捆绑”,因为1)捆绑多个CDN资源是没有意义的,因为这将破坏CDN的目的,2)该捆绑仅存在于此如果CDN资源不可用,则提供后备.否则,您只需将其硬编码到页面,而不用担心设置一个捆绑包,那么您也将被送达.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读