ErrorResponse(code = AccessDenied, message = Access denied, bucketName = bucket, objectName = null

本文记录了使用最新版MinIO容器时遇到的403错误问题及其解决过程。作者通过调整容器配置与时区设置尝试解决问题,但仍然收到访问被拒的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

详细报错信息如下,最新版minio容器,旧版的正常运行

error occurred
ErrorResponse(code = AccessDenied, message = Access denied, bucketName = bucket, objectName = null, resource = /bucket, requestId = null, hostId = null)
request={method=HEAD, url=http://192.168.186.128:9090/bucket, headers=Host: 192.168.186.128:9090
Accept-Encoding: identity
User-Agent: MinIO (amd64; amd64) minio-java/2.0.0
Content-MD5: 1B2M2Y8AsgTpgAmY7PhCfg==
x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
x-amz-date: 20220126T034536Z
Authorization: AWS4-HMAC-SHA256 Credential=REDACTED/20220126/us-east-1/s3/aws4_request, SignedHeaders=accept-encoding;content-md5;host;x-amz-content-sha256;x-amz-date, Signature=REDACTED
}
response={code=403, headers=Date: Wed, 26 Jan 2022 03:45:36 GMT
Content-Length: 209
Content-Type: text/xml; charset=utf-8
Connection: close
}

执行以下命令,时区改成功了,但是程序还是报403

yum -y install utp ntpdate
ntpdate cn.pool.ntp.org
hwclock --systohc

进入容器内命令

docker exec -it 0011 /bin/bash
date

由于我找不到dockerfile文件,所以最后我又重新制作了一个容器

docker run -p 9000:9000 --name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=admin123456" \
-v /home/data:/data \
-v /home/config:/root/.minio \
-e TZ=Asia/Shanghai \
-v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime \
minio/minio server /data --console-address ":9000"

此命令有冗余成分,为了万无一失,我添加了两个时区命令及控制端口命令(新minio老是变端口)这次容器的时间正常了,但是软件上传文件还是报403response里时间晚八小时

### ESP32 运行过程中出现的 JavaScript 错误解决方案 #### 1. 类型检查和代码安全性 ESP-TypeScript 提供了类型检查功能,这有助于减少由于类型不匹配引起的错误。通过使用 TypeScript 编写代码并将其转换为 Espruino 风格的 JavaScript,在开发阶段就能捕获许多潜在问题[^1]。 ```typescript // Example of type-safe code using TypeScript function addNumbers(a: number, b: number): number { return a + b; } ``` #### 2. 处理网络请求失败 对于 `fetch` 函数可能引发的异常情况,应该增加更详细的错误处理逻辑来提高程序健壮性。确保即使在网络请求失败的情况下也不会影响整个系统的稳定性[^2]。 ```javascript function httpTrace(host, path) { fetch(`${host}${path}`) .then(response => response.text()) .then(body => trace(`Response body:\n${body}`)) .catch(error => trace(`HTTP GET failed with error: ${error.message}\n`)); } ``` #### 3. 解决未对齐内存访问问题 针对像 ESP8266 这样的微控制器无法支持错位读写的特性,应避免在 C 或其他底层编程语言中执行此类操作。而在 JavaScript 中则无需担心此问题,因为它保证了无论是否对齐都能正常工作[^3]。 #### 4. 文件 I/O 操作优化 当涉及到文件写入时,利用 `write` 方法一次性传递多个参数可以提升效率并减小程序体积。这种方法特别适用于频繁进行大量数据传输的应用场景[^4]。 ```javascript let bytes = Uint32Array.of(0x01020304, 0x05060708); let file = new File("/root/test.bin", true); file.write(bytes.buffer, ...[9, 10, 11, 12], "ONE TWO!"); file.close(); ``` #### 5. 权限配置与串口通信调试 如果遇到因权限不足而导致无法正常使用串口设备的情况,则需按照特定步骤调整用户组设置,并确认修改后的效果。这对于依赖于外部硬件接口的应用至关重要[^5]。 ```bash ls /dev/tty* sudo usermod -a -G dialout $USER # Restart the system to apply changes. reboot ```
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值