.net oss 签名 SignatureDoesNotMatch

弄了很久,阿里官网的并不可以

话不多说上直接上代码

 public void GetSigned(string bucketName,string objectName)
        {
            Uri u = GeneratePresignedUri(bucketName, objectName, DateTime.Now.AddDays(1));
        }
        /// <summary>
        /// 获取uri
        /// </summary>
        /// <param name="bucketName"></param>
        /// <param name="key">AccessKey</param>
        /// <param name="expiration">有效期</param>
        /// <returns></returns>
        private Uri GeneratePresignedUri(string bucketName, string key, DateTime expiration)
        {
            ResponseHeaderOverrides responseHeaders = new ResponseHeaderOverrides();
            responseHeaders.ContentType = "application/octet-stream";

            var request = new GeneratePresignedUriRequest(bucketName, key, SignHttpMethod.Get)
            {
                Expiration = expiration,
                ResponseHeaders = responseHeaders
            };
            return handleclient.GeneratePresignedUri(request);
        }

在SAP中生成OSS签名,可以使用阿里云提供的Java SDK,在Java程序中调用SDK的接口实现。具体步骤如下: 1. 下载并安装阿里云Java SDK。 2. 在Java程序中引入SDK的相关包。 3. 在Java程序中编写代码,获取Access Key和Secret Key,并创建阿里云OSS客户端实例: ``` String accessKeyId = "<yourAccessKeyId>"; String accessKeySecret = "<yourAccessKeySecret>"; String endpoint = "<yourEndpoint>"; OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); ``` 4. 在Java程序中编写代码,设置OSS请求参数: ``` GeneratePresignedUrlRequest request = new GeneratePresignedUrlRequest("<yourBucketName>", "<yourObjectName>"); request.setExpiration(new Date(new Date().getTime() + 3600 * 1000)); ``` 其中,<yourBucketName>是Bucket的名称,<yourObjectName>是对象的名称,3600 * 1000表示签名的有效期为1小时。 5. 在Java程序中编写代码,生成OSS签名: ``` URL signedUrl = ossClient.generatePresignedUrl(request); ``` 6. 在Java程序中使用生成的OSS签名进行相应的操作,例如上传、下载等。 需要注意的是,生成OSS签名的代码需要在Java程序中编写,并在SAP系统中调用Java程序。在SAP系统中调用Java程序时,需要按照SAP的RFC规范进行编写,保证与SAP系统的数据交互的正确性和稳定性。另外,在使用OSS签名时,需要按照阿里云OSS的计费标准进行使用,避免产生不必要的费用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值