【问题标题】:Azure CORS ConfigurationAzure CORS 配置
【发布时间】:2014-07-09 11:14:54
【问题描述】:

我正在使用 azure.jquery.fineuplaoder-4.4.0 源,当我尝试上传时遇到这些错误:

OPTIONS http://gfbc.blob.core.windows.net/beta 403 (CORS not enabled or no matching rule found for this request.) 

XMLHttpRequest cannot load http://gfbc.blob.core.windows.net/beta. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://dev.gfbclife.org' is therefore not allowed access. 

我正在使用提供的默认 html 模板并像这样调用 FineUploader:

<script>
    $(document).ready(function () {
        $("#fine-uploader").fineUploader({
            request: {
                endpoint: 'http://gfbc.blob.core.windows.net/beta'
            },
            signature: {
                endpoint: '/Signature'
            },
            retry: {
                enableAuto: true
            },
            deleteFile: {
                enabled: true
            }
        });
    });
</script>

我已将我的 CORS 规则定义为:

Allowed Origin: http://dev.gfbclife.org
Allowed Methods: Get, head, Post, Put, Delete, trace, Options
Allowed Headers: *
Exposed Headers: *
Max Age: 432000

更新:我已经更正了 CORS 规则,不再出现以前的错误。我现在收到这些错误:

POST http://gfbc.blob.core.windows.net/beta 405 (The resource doesn't support specified Http Verb.) 
[Fine Uploader 4.4.0] Error when attempting to parse xhr response text (Unexpected token <) 

POST 的响应是:

<?xml version="1.0" encoding="utf-8"?><Error><Code>UnsupportedHttpVerb</Code>
<Message>The resource doesn't support specified Http Verb.
RequestId:f24c6afb-6e42-42da-aafb-3151422562cc
Time:2014-05-21T02:26:50.2758734Z</Message></Error>

【问题讨论】:

  • Allowed Origin 中的 URL 看起来不正确。您能否确认它是发出请求的正确 URL?
  • 我已经更新了问题,一直在使用dev.gfbclife.org
  • 我可以让它与Allowed Origin: *一起工作,但我不想让它敞开。
  • 源 URL 必须与 CORS 规则中配置的内容完全匹配,包括大小写。你能检查一下是不是这样吗?
  • 我已经用最新的错误更新了问题。

标签: jquery azure cors azure-blob-storage fine-uploader


【解决方案1】:

如错误消息所示,您的 CORS 规则不正确。您允许的来源必须包括您为 request.endpoint 选项提供的 URL 的域。

【讨论】:

  • 我已经更新了 CORS 条目,但我不再收到该错误。
  • 您最近的错误是由于库初始化不当造成的。如果您使用 jQuery 插件包装器,则必须使用 $("#fine-uploader").fineUploaderAzure({... 初始化插件。您可以在getting started guide 中阅读有关正确使用 Azure 端点处理程序的更多信息。
  • 太好了,现在可以使用了!是否可以在上传时保留原始文件名?
  • 是的,将blobProperties.blobName option 设置为“文件名”。
猜你喜欢
  • 1970-01-01
  • 2022-01-12
  • 2015-07-15
  • 2017-10-30
  • 2017-07-11
  • 1970-01-01
  • 2022-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多