我想在将文件上传到Amazon S3存储桶时设置UserAgent。在旧版本的AWS sdk中,ClientConfig中有属性,我们可以在其中设置或获取UserAgent。但在最新版本中,它改变了。那么,我如何在我的应用程序中设置此选项。
编程语言:C#
SDK版本:最新(3.3.5.2)
环境:VS-2015和Windows。
答案 0 :(得分:0)
我们也有类似的要求。我们能够使用反射解决它。请注意,这不是便携式解决方案,如果升级AWS开发工具包库,它可能会中断
AmazonS3Config config = new AmazonS3Config();
var bindingFlags = BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public;
var fields= config.GetType().GetFields(bindingFlags);
var userAgent = fields.Where(x => x.Equals("_userAgent") && x.FieldType == typeof(string)).First();
if (userAgent != null)
{
userAgent.SetValue(config, "my-custom-user-agent");
}