国产儿子干妈妈
国产三级

你的位置:国产儿子干妈妈 > 国产三级 > 丁香色五月 .NET跨域资源分享

丁香色五月 .NET跨域资源分享

发布日期:2024-11-01 20:13    点击次数:163

丁香色五月 .NET跨域资源分享

因浏览器的同源战略截止丁香色五月,在不同域名之间进行数据交互粗略资源分享时,会出现跨域恳求被休止的问题。您不错通过修复允许特定的域名、轨范和恳求头的跨域走访战略,措置跨域问题。

堤防事项

本文以华东1(杭州)外网Endpoint为例。若是您但愿通过与OSS同地域的其他阿里云居品走访OSS,请使用内网Endpoint。对于OSS接济的Region与Endpoint的对应干系,请参见走访域名和数据中心。

本文以OSS域名新建OSSClient为例。若是您但愿通过自界说域名、STS等花式新建OSSClient,请参见驱动化。

要修复跨域法例,您必须有oss:PutBucketCors权限;要赢得跨域法例,您必须有oss:GetBucketCors权限;要删除跨域法例,您必须有oss:DeleteBucketCors权限。具体操作,请参见为RAM用户授权自界说的权限战略。

李蓉蓉 麻豆修复跨域资源分享法例

以下代码用于修复指定存储空间的跨域法例:

using Aliyun.OSS;
using Aliyun.OSS.Common;

// yourEndpoint填写Bucket场地地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
var endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
// 从环境变量中赢得走访把柄。运行本代码示例之前,请确保已修复环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
var accessKeyId = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_ID");
var accessKeySecret = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET");
// 填写Bucket称号,国产三级举例examplebucket。
var bucketName = "examplebucket";

// 创建OSSClient实例。
var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
try
{
    var request = new SetBucketCorsRequest(bucketName);
    var rule1 = new CORSRule();
    // 指定允许跨域恳求的着手。
    rule1.AddAllowedOrigin("");
    // 指定允许的跨域恳求轨范(GET/PUT/DELETE/POST/HEAD)。
    rule1.AddAllowedMethod("POST");
    // AllowedHeaders和ExposeHeaders不接济通配符。
    rule1.AddAllowedHeader("*");
    // 指定允许用户从利用要领中走访的反应头。
    rule1.AddExposeHeader("x-oss-test");
    // 最多允许10条法例。
    request.AddCORSRule(rule1);
    var rule2 = new CORSRule();
    // AllowedOrigins和AllowedMethods最多接济一个星号(*)通配符。星号(*)暗意允许通盘的域着手粗略操作。
    rule2.AddAllowedOrigin("");
    rule2.AddAllowedMethod("GET");
    // 是否允许预取提示(OPTIONS)中Access-Control-Request-Headers头中指定的Header。
    rule2.AddExposeHeader("x-oss-test2");
    // 指定浏览器对特定资源的预取(OPTIONS)恳求复返成果的缓存时间,单元为秒。
    rule2.MaxAgeSeconds = 100;
    request.AddCORSRule(rule2);
    // 修复跨域资源分享法例。
    client.SetBucketCors(request);
    Console.WriteLine("Set bucket:{0} Cors succeeded ", bucketName);
}
catch (OssException ex)
{
    Console.WriteLine("Failed with error info: {0}; Error info: {1}. \nRequestID:{2}\tHostID:{3}",
        ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
}
catch (Exception ex)
{
    Console.WriteLine("Failed with error info: {0}", ex.Message);
}
赢得跨域资源分享法例

赢得跨域资源分享法例完满代码请参见GitHub。

以下代码用于赢得跨域法例:

using Aliyun.OSS;
using Aliyun.OSS.Common;
// yourEndpoint填写Bucket场地地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
var endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
// 从环境变量中赢得走访把柄。运行本代码示例之前,请确保已修复环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
var accessKeyId = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_ID");
var accessKeySecret = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET");
// 填写Bucket称号,举例examplebucket。
var bucketName = "examplebucket";

// 创建OSSClient实例。
var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
try
{
    // 赢得跨域资源分享法例。
    var result = client.GetBucketCors(bucketName);
    Console.WriteLine("Get bucket:{0} Cors succeeded ", bucketName);
    foreach (var rule in result)
    {
        foreach (var origin in rule.AllowedOrigins)
        {
            Console.WriteLine("Allowed origin:{0}", origin);
        }
    }
}
catch (OssException ex)
{
    Console.WriteLine("Failed with error info: {0}; Error info: {1}. \nRequestID:{2}\tHostID:{3}",
        ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
}
catch (Exception ex)
{
    Console.WriteLine("Failed with error info: {0}", ex.Message);
}
删除跨域资源分享法例

以下代码用于删除指定存储空间的通盘跨域法例:

using Aliyun.OSS;
using Aliyun.OSS.Common;
// yourEndpoint填写Bucket场地地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
var endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
// 从环境变量中赢得走访把柄。运行本代码示例之前,请确保已修复环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
var accessKeyId = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_ID");
var accessKeySecret = Environment.GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET");
// 填写Bucket称号,举例examplebucket。
var bucketName = "examplebucket";

// 创建OSSClient实例。
var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
try
{
    // 删除跨域资源分享法例。
    client.DeleteBucketCors(bucketName);
    Console.WriteLine("Delete bucket:{0} Cors succeeded ", bucketName);
}
catch (OssException ex)
{
    Console.WriteLine("Failed with error info: {0} ; Error info: {1}. \nRequestID:{2}\tHostID:{3}",
        ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
}
catch (Exception ex)
{
    Console.WriteLine("Failed with error info: {0}", ex.Message);
}
有关文档

对于跨域资源分享的完满示例代码,GitHub示例。

对于修复跨域法例的API接口诠释,请参见PutBucketCors。

对于赢得跨域法例的API接口诠释,请参见GetBucketCors。

对于删除跨域法例的API接口诠释丁香色五月,请参见DeleteBucketCors。



首页| 经典三级片 | 最新三级片 | 有没有好看的三级 | 国产三级 | 三级 | 香港三级片 |

Powered by 国产儿子干妈妈 @2013-2022 RSS地图 HTML地图

Copyright Powered by站群 © 2013-2022 版权所有