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图片裁剪功能