一个C#开发的项目需要把文件上传到腾讯云的存储,以为是一个小CASE,用他的SDK呗,查了半天腾讯云对象存储的SDK,提供了C,C++,JAVA,Android,PHP,PYTHON几乎有所主流语言的SDK,就是没有C#的,咨询官方确认没有提供,不知道是不是语言歧视,看来只有看看他的API能不能搞;
看了下PUT Object API,官方描述:“PUT Object 接口请求可以将本地的对象(Object)上传至指定存储桶中”。貌似这个能上传,但官方只有参数说明,没有示例,看来只有自已摸索,最麻烦的是上传需要签名,需要自已写一个生成签名的服务,生成签名的服务流程如下:
另一个同事把签名的服务搞了,但还有个麻烦事,官方提供的请求参数中签名的“Authorization”是不带认证类型,如下:
在C#中用HttpClient工具类不能直接通过Headers.Add的方式加Authorization键值对,必须指定认证类型,但指定认证类型后,调用不成功,只有换一个工具类HttpWebRequest,可以把Authorization调Headers.Add(header.Key, heade