首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >机架空间CloudFiles的CORS问题

机架空间CloudFiles的CORS问题
EN

Stack Overflow用户
提问于 2018-02-09 17:49:35
回答 1查看 269关注 0票数 1

我有一个Angular 1.x应用程序,它使用流行的ng- OpenCloud -upload向Rackspace库发出将文件上传到CDN的请求。

简而言之,下面的脚本上传一个文件,将其发送到应用程序的后端,然后向Rackspace Container发送一个请求并返回公共URL。这一切在Postman中都运行得很好,没有问题-当我在我的Angular应用程序中实现这一点时,我遇到了一些CORS问题(参见下面的上传代码)-前端Angular向我们的后端应用程序发送一个请求,后者反过来向OpenCloud发送一个请求,要求将文件上传到Rackspace CDN并返回公共URL。

//前端Angular app

代码语言:javascript
复制
        Upload.upload({
            url : 'https://asite.com/users/request',
            data : {
                __token : $localStorage.token.value,
                fileToUpload : file
            }
        // additional code below not shown for clarity

在控制台日志中,我看到以下内容:(为了安全起见,我更改了下面的实际url ) :-

无法加载https://xxxxxxxxxxxxxx-2426685a61633353dfd5b28cdbf2b449.ssl.cf3.rackcdn.com/5a7d6de352a949.48129019.pdf:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问源'http://domain.local‘。如果不透明的响应满足您的需求,请将请求的模式设置为'no- CORS‘,以便在禁用CORS的情况下获取资源。

如何防止这个CORS错误,使其从CDN加载文件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-09 18:17:58

修复-问题实际上是在PHP后端(以防它帮助其他人)

代码语言:javascript
复制
$object = $container->DataObject();
$object->Create(array(
        'name' => $filename, 
        'content_type' => $mime, 
        'extra_headers' => array('Access-Control-Allow-Origin' => '*'
)), $file);

在使用OpenCloud SDK创建文件时,我需要将其添加到额外的标头数组中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48703001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档