尝试将 tiffs 上传到 Mapbox,我收到"调用创建多部分上传操作时访问被拒绝"



我正在尝试创建一个shell脚本,将我们的tiff上传到mapbox使用他们的API。我从最初的curl post中检索临时凭据,但当涉及到通过aws的cp命令复制数据时,我在调用CreateMultipartUpload操作时得到错误访问拒绝。

我假设此错误与凭证存储不正确有关。我的代码如下:

#save curl response as var
ans=`curl -X POST "https://api.mapbox.com/uploads/v1/xxx/credentials?access_token=$token"`
#extract necessary info from var
key=`echo $ans | grep -zoP '"key":s*"K[^s,]*(?=s*",)'`
bucket=`echo $ans | grep -zoP '"bucket":s*"K[^s,]*(?=s*",)'`
accessKeyId=`echo $ans | grep -zoP '"accessKeyId":s*"K[^s,]*(?=s*",)'`
secretAccessKey=`echo $ans | grep -zoP '"secretAccessKey":s*"K[^s,]*(?=s*",)'`
sessionToken=`echo $ans | grep -zoP '"sessionToken":s*"K[^s,]*(?=s*",)'`
#export env variables for auth
export AWS_ACCESS_KEY_ID=$accessKeyId
export AWS_SECRET_ACCESS_KEY=$secretAccessKey
export AWS_SESSION_TOKEN=$sessionToken
#copy data across
aws s3 cp $inputdir s3://$bucket/$key/ --recursive --region us-east-1

任何帮助都将非常感激。

不支持--recursive。您需要逐个上传文件。