Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax从CDN加载脚本(使用jQuery)是';行不通_Ajax_Jquery_Amazon Cloudfront - Fatal编程技术网

Ajax从CDN加载脚本(使用jQuery)是';行不通

Ajax从CDN加载脚本(使用jQuery)是';行不通,ajax,jquery,amazon-cloudfront,Ajax,Jquery,Amazon Cloudfront,在我的Javascript密集型Web应用程序中,我有一些用标记加载到源HTML中的脚本,还有一些使用jQuery的ajax方法根据需要加载 我正在将我的应用程序的大部分静态资产重新定位到CDN(我正在使用AWS Cloudfront)。我的动态负载不再工作。jQuery Ajax调用: $.ajax({ url: url, dataType: 'script', async: true, success: function (content) {

在我的Javascript密集型Web应用程序中,我有一些用标记加载到源HTML中的脚本,还有一些使用jQuery的ajax方法根据需要加载

我正在将我的应用程序的大部分静态资产重新定位到CDN(我正在使用AWS Cloudfront)。我的动态负载不再工作。jQuery Ajax调用:

$.ajax({
    url: url, 
    dataType: 'script',
    async: true,
    success: function (content) {
        ....
触发成功函数,但内容为空


我想知道这是否是因为这样的请求违反了浏览器的跨站点脚本安全模型。如果是这种情况,是否存在从CDN动态加载脚本的方法?啊。。。我目前没有为cloudfront主机使用CNAME别名。这样做能解决这个问题吗

你说得对,是跨站点脚本安全阻止了这一点


您可以使用该方法从外部域(或内部域)加载它。

您使用的URL是什么?我还没有这样做,但我非常确定我需要使用指向我的Cloudfront的DNS设置一个CNAME,并告诉Cloudfront有关CNAME的信息,以便它可以为我的存储库中的请求提供服务。我已经设置了CNAME,但是对于子域来说,它没有帮助,因为同源策略不允许从子域加载脚本。jQuery.getScript使用jQuery.ajax,所以我仍然面临同样的问题。