情况:腾讯COS上传文件,asp.net项目。开始是这样处理的:前端上传文件到后台,后台再上传到COS,一开始考虑的是统一管理,这时候用的也是永久的id和key。部署的时候因为服务器流量成本增加的原因,需要前端直接上传文件到COS,安全考虑,需要后台动态生成临时密钥。
官网文档中介绍了两种获取方式:

方式2有点复杂就没继续看。
主要记录下方式1在使用中遇到的问题。
运行COS STS SDK的demo没问题,然后在asp.net项目中运行的时候,导致整个程序不响应了。
1.COS STS SDK依赖TecentCloudSDK和标准库

2.在TecentCloudSDK的github首页有对这个问题描述:

3.然后参考下里面的这篇文章,我们需要使用同步方法。
4.我们看到COS STS SDK的源码就只有一个STSClient.cs,把这个文件里异步方法修改一下:将genCredential()方法中的获取证书如下改成同步
//GetFederationTo

在asp.net项目中,为降低服务器流量成本,需要前端直接将文件上传到腾讯COS,并确保安全性。文章记录了在尝试使用COS STS SDK动态生成临时密钥时遇到的问题,包括程序因SDK异步方法导致不响应。通过查看官方文档、TencentCloudSDK的GitHub页面以及修改STSClient.cs的异步方法为同步,最终解决了问题。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



