OSS  上传图片错误码 403

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OSS  上传图片错误码 403相关的知识,希望对你有一定的参考价值。

参考技术A 使用OSS上传图片到阿里云时,报错误码403,提示:The OSS Access Key Id you provided does not exist in our records.,

官方给出的排查结果是:AccessKeyID禁用或不存在,但是登录阿里云控制台 AccessKey 管理 发现AccessKeyID正确,并启用着状态.以为是AccessKeyID与解析视频是两个ID,试了还是报403.所以并不是AccessKeyID的问题,那就是KeySecret或者token的问题.

最终换了一个解决思路,不使用OSSStsTokenCredentialProvider创建OSSCredentialProvider,使用OSSPlainTextAKSKPairCredentialProvider的- (instancetype)initWithPlainTextAccessKey:(NSString *)accessKey secretKey:(NSString *)secretKey __attribute__((deprecated("We recommend the STS authentication mode on mobile")));方法来创建OSSCredentialProvider,这样就避免了token错误的问题,果然,用了这个方法图片上传成功了.

希望能帮到遇到这个问题的童鞋们.

使用 OSS 上传图片

<?php

set_time_limit(0);

// 引入自动加载类
// 确保路径是否正确

require_once ‘autoload.php‘;

// 确定参数 需要申请

$accessKeyId = "*****";
$accessKeySecret = "*****";
$endpoint = "*****";
$bucket = "*****";

// 实例化

$ossClient = new \OSS\OssClient($accessKeyId, $accessKeySecret, $endpoint);

// scandir()函数返回指定目录中的文件和目录的数组。

$filesnames = scandir(‘./img‘);

// 遍历

foreach ($filesnames as $name) {

if(‘.‘==$name || ‘..‘==$name || ‘Thumbs.db‘==$name ){
continue;
}

$filePath = ‘upload/photo/‘.$name; // 上传至服务器的名字
$url = ‘./img/‘.$name; // 本地文件的名字

echo $url."\n";
$ossClient->uploadFile($bucket, $filePath, $url);

}

 

?>

以上是关于OSS  上传图片错误码 403的主要内容,如果未能解决你的问题,请参考以下文章

vue点击上传图片,vue上传oss,vue-cropper图片裁剪功能

vue页面传值能传图片吗

图片上传oss--先拿server端签名再上传oss,返回id值

阿里Oss图片上传组件

阿里云里oss图片上传的复制文件地址太长了,怎么办?

oss 图片处理