Apache Camel Minio组件的listObjects操作不起作用的解决方法是设置endpoint的accessKey和secretKey属性,以此通过签名进行认证。示例代码如下:
MinioConfiguration config = new MinioConfiguration(); config.setAccessKey(ACCESS_KEY"); config.setSecretKey("SECRET_KEY"); config.setBucketName("my-bucket"); config.setOperation(MinioOperations.listObjects);
// 设置访问点endpoint属性 MinioEndpoint endpoint = new MinioEndpoint( "minio://localhost:9000/my-bucket?operation=listObjects", new MinioComponent(new DefaultCamelContext())); endpoint.setConfiguration(config);
// 在路由中使用 from("direct:start") .to(endpoint) .log("${body}");
在以上示例代码中,我们设置了accessKey,secretKey和bucketName属性,并且指定了操作listObjects。然后,我们通过MinioEndpoint设置访问点endpoint属性,最后通过路由中的to操作连接到endpoint并记录响应体。"