gpt4 book ai didi

upload - InvalidPolicyDocument,缺少政策错误谷歌云存储

转载 作者:行者123 更新时间:2023-12-04 03:23:41 25 4
gpt4 key购买 nike

我正在尝试使用 axios 访问谷歌云存储桶以上传文件:

我将存储桶中的 CORS 策略设置为:

[
{
"origin": ["http://localhost:8000", "localhost"],
"responseHeader": ["Access-Control-Allow-Origin", "Content-Type"],
"method": ["GET", "HEAD", "DELETE", "PUT", "POST"],
"maxAgeSeconds": 3600
}
]

然后我使用这个 gsutil 命令生成一个签名的 url:

gsutil signurl -m RESUMABLE -d 1h my-key.json gs://test-bucket/

最后我发送了这个 axios POST 请求:

var startLink = "signed url from gsutil"
var data = {
'Content-Length': 0,
'Content-Type': 'text/plain',
'x-goog-resumable': 'start',
host: 'test-django-bucket.storage.googleapis.com',
};

axios.post(startLink, data)
.then(function(response) {
console.log(respone);
});

我得到的结果是:

<?xml version='1.0'
encoding='UTF-8'?><Error><Code>InvalidPolicyDocument</Code><Message>The content of the form does not meet the conditions specified in the
policy document.</Message><Details>Missing policy</Details></Error>

我到底做错了什么?我正在按照找到的说明进行操作 here .


更新:下面是来自@BrandonYarbrough 的一些关于我必须修复什么才能让一切正常工作的注释:

首先axios请求错误,应该是:

var data = {
headers: {
'content-type': 'text/plain',
'x-goog-resumable': 'start',
}
};
axios.post(startLink, {}, data)
.then(function(response) {
console.log(response);
});

接下来我必须按照如下所述将 gstuil 命令更新为:

gsutil signurl -m RESUMABLE -d 10h -c "text/plain" mykey.json gs://test-bucket

最佳答案

您需要向 gsutil 提供另外两条信息以添加到签名中:Content-Type 和您正在创建的对象的名称。试试这个命令:

gsutil signurl -m RESUMABLE -d 1h -c "text/plain" my-key.json gs://test-bucket/object-name.txt

此外,gsutil 可能会输出类似“storage.googleapis.com/test-django-bucket/your_object?lotsOfUrlParameters”的 URL。如果您在指定“test-django-bucket.storage.googleapis.com”的主机 header 时转到该 URL,看起来您实际上想要一个名为“test-django-bucket/your_object”的对象名为“test-django-bucket”的桶。要么删除主机 header 并直接点击 storage.googleapis.com,要么编辑 gsutil 返回的 URL 以删除“test-django-bucket”位。

此外,我认为您将标题作为数据发送。我认为 axios header 是使用“ header ”配置部分设置的。

关于upload - InvalidPolicyDocument,缺少政策错误谷歌云存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37978638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com