我这边接入阿里云图片审核增强版(本地文件检测),出现偶发异常:com.aliyun.oss.OSSException: The OSS Access Key Id you provided does not exist in our records.两种不同的错误场景:1. 运行一段时间后,上述报错会一直出现。2. 运行一段时间后,指定serviceCode为营销素材检测(advertisingCheck)报错,指定为通用基线检测(baselineCheck)正常我方系统的图片检测Client和OssClient只会初始化一次,后续保存在内存中重复使用
这个是PutObjectRequest的构造和OSS上传代码,我这边只会在OssClient初始化时设入securityToken,后续上传都不会再设值了,是这个问题吗?
我是参考文档来写的
这个问题可能是由于阿里云OSS的Access Key Id不存在导致的。你可以尝试以下方法解决这个问题:
确保你的阿里云账号中存在一个有效的Access Key Id和Access Key Secret。你可以在阿里云控制台的“访问管理”页面找到它们。
在你的代码中,确保你使用了正确的Access Key Id和Access Key Secret来初始化OssClient。例如:
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
public class AliyunOssClient {
private static final String ENDPOINT = "oss-cn-hangzhou.aliyuncs.com";
private static final String ACCESS_KEY_ID = "your_access_key_id";
private static final String ACCESS_KEY_SECRET = "your_access_key_secret";
public static OSS createOssClient() {
return new OSSClientBuilder().build(ENDPOINT, ACCESS_KEY_ID, ACCESS_KEY_SECRET);
}
}
根据您提供的信息,这个问题可能是由于阿里云OSS的Access Key Id不存在导致的。您可以尝试以下方法解决这个问题:
确保您的Access Key Id和Access Key Secret是正确的。您可以在阿里云控制台中找到这些信息。
检查您的代码中是否正确设置了Access Key Id和Access Key Secret。在初始化OssClient时,确保传入正确的参数。例如:
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.PutObjectRequest;
public class AliyunOSSDemo {
public static void main(String[] args) {
String endpoint = "your-endpoint";
String accessKeyId = "your-access-key-id";
String accessKeySecret = "your-access-key-secret";
String bucketName = "your-bucket-name";
String objectName = "your-object-name";
String filePath = "your-file-path";
// 创建OSSClient实例
OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
// 上传文件到OSS
PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, new File(filePath));
ossClient.putObject(putObjectRequest);
// 关闭OSSClient
ossClient.shutdown();
}
}
是OSS的报错 看起来是缺少参数securityToken
这个uploadToken是有过期时间的,得需要在过期之前重新实例化下ossClient
此回答整理自钉群“阿里云内容安全技术答疑群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。