各位大神,在URL加密访问情况下如何传入图片裁切参数?
DateTime expirationDate = DateTime.Now.AddMinutes(10);
GeneratePresignedUriRequest generateRequest = new GeneratePresignedUriRequest(item.BucketName, item.Key);
Dictionary<string, string> dicParam = new Dictionary<string, string>();
generateRequest.QueryParams = dicParam;
generateRequest.Expiration = expirationDate;
var url = client.GeneratePresignedUri(generateRequest).ToString();
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
要在URL加密访问的情况下传入图片裁切参数,您可以通过在生成签名URL时添加自定义查询参数来实现。这些参数将随URL一起被签名,从而允许接收端识别并根据参数对图片进行处理,如裁切。以下是基于您提供的C#代码示例的扩展方法:
Dictionary<string, string> dicParam = new Dictionary<string, string>();
// 假设我们想裁切图片的宽度为200px,高度为300px,起点为(10, 20)
dicParam.Add("width", "200");
dicParam.Add("height", "300");
dicParam.Add("x", "10");
dicParam.Add("y", "20");
GeneratePresignedUriRequest
的QueryParams
属性。DateTime expirationDate = DateTime.Now.AddMinutes(10);
GeneratePresignedUriRequest generateRequest = new GeneratePresignedUriRequest(item.BucketName, item.Key);
generateRequest.QueryParams = dicParam; // 添加裁切参数到请求
generateRequest.Expiration = expirationDate;
var url = client.GeneratePresignedUri(generateRequest).ToString();
这样生成的签名URL将包含您的裁切参数,当通过此URL访问图片时,后端服务或CDN(如果支持动态处理)可以根据这些参数对图片进行实时裁切处理。请注意,实际能否根据这些参数进行处理还需依赖于图片服务器或CDN服务的支持能力。
确保图片处理服务已配置正确以解析这些查询参数并执行相应的图片处理操作。