我想通过 angular2 将文件存储到 azure blob 数据。这样我就创建了一个名为“mysampleoxy”的存储
然后在 blob 下创建一个容器“videos”。
现在我想将文件从本地服务器上传到 Azure,这样我就创建了一个带有 url 的 sas 密钥
我已经为 blob 启用了 cors,详细信息如下
<CorsRule>
<AllowedOrigins>*</AllowedOrigins>
<AllowedMethods>PUT,GET</AllowedMethods>
<AllowedHeaders>x-ms-meta-data*,x-ms-meta-target,x-ms-meta-source</AllowedHeaders>
<ExposedHeaders>x-ms-meta-*</ExposedHeaders>
<MaxAgeInSeconds>200</MaxAgeInSeconds>
</CorsRule>
但是当我尝试通过我的服务器上传文件时,控制台中显示以下错误
<?xml version="1.0" encoding="utf-8"?>
<Error><Code>UnsupportedHttpVerb</Code>
<Message>The resource doesn't support specified Http Verb.
RequestId:fa9c21f3-0001-005a-1484-d83478000000
Time:2017-05-29T14:02:25.2296729Z</Message>
</Error>
标题是:
请求网址:
请求方式:
放
状态代码:
405 资源不支持指定的 Http Verb。
远程地址:
52.172.16.136:443
推荐人政策:
降级时无推荐人
我的 cors 配置没有出现任何问题。任何与此相关的解决方案都可以帮助我解决这个问题。
谢谢。
您的请求网址不正确。它应包括容器名称和文件名称。因此,如果您要在“videos”容器下上传“file.mov”(示例),您的请求 URL 应为:
我还建议改变AllowedHeaders
& ExposedHeaders
在 CORS 配置中*
(即允许所有标头并返回所有标头)。这些标头中的轻微不匹配将导致 Azure 存储出现 403 错误。所以你的 CORS 配置将是:
<CorsRule>
<AllowedOrigins>*</AllowedOrigins>
<AllowedMethods>PUT,GET</AllowedMethods>
<AllowedHeaders>*</AllowedHeaders>
<ExposedHeaders>*</ExposedHeaders>
<MaxAgeInSeconds>200</MaxAgeInSeconds>
</CorsRule>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)