obs
设置跨域规则
更新时间:2021/02/08 GMT+08:00

开发过程中,您有任何问题可以在github上提交issue,或者在华为云对象存储服务论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。
您可以通过ObsClient.SetBucketCors设置桶的跨域规则,如果原规则存在则覆盖原规则。以下代码展示了如何设置跨域规则:
// 创建ObsClient实例 ObsClient client = new ObsClient("*** Provide your Access Key ***", "*** Provide your Secret Key ***", "https://your-endpoint"); // 设置桶跨域规则 try { SetBucketCorsRequest request = new SetBucketCorsRequest(); request.BucketName = "bucketname"; request.Configuration = new CorsConfiguration(); CorsRule rule = new CorsRule(); rule.Id = "20170820"; // 指定允许跨域请求的来源 rule.AllowedOrigins.Add("http://www.a.com"); rule.AllowedOrigins.Add("http://www.b.com"); // 控制在OPTIONS预取指令中Access-Control-Request-Headers头中指定的header是否被允许使用 rule.AllowedHeaders.Add("x-obs-header"); // 指定允许的跨域请求方法(GET/PUT/DELETE/POST/HEAD) rule.AllowedMethods.Add(HttpVerb.HEAD); rule.AllowedMethods.Add(HttpVerb.PUT); rule.AllowedMethods.Add(HttpVerb.GET); rule.AllowedMethods.Add(HttpVerb.POST); rule.AllowedMethods.Add(HttpVerb.DELETE); // 指定允许用户从应用程序中访问的header rule.ExposeHeaders.Add("x-obs-test1"); rule.ExposeHeaders.Add("x-obs-test2"); rule.MaxAgeSeconds = 100; request.Configuration.Rules.Add(rule); SetBucketCorsResponse response = client.SetBucketCors(request); Console.WriteLine("Set bucket cors response: {0}", response.StatusCode); } catch (ObsException ex) { Console.WriteLine("ErrorCode: {0}", ex.ErrorCode); Console.WriteLine("ErrorMessage: {0}", ex.ErrorMessage); }

AllowedOrigins、AllowedMethods、AllowedHeaders都能够最多支持一个“*”通配符。“*”表示对于所有的域来源、操作或者头域都满足。
父主题: 跨域资源共享
