OSS的简单使用

https://help.aliyun.com/document_detail/84781.html?spm=a2c4g.11186623.4.1.7bef59aakn5jmz

Object Storage Service,简称 OSS,是阿里云提供的海量、安全、低成本、高可靠的云存储服务。

它具有与平台无关的RESTful API接口,能够提供99.999999999%的服务持久性。

使用场景:
图片分享
热点视频

下面介绍一些基本功能:

初始化 创建存储空间 上传文件 跨域访问设置 设置读写权限
1.初始化

创建一个OssClient,就可以很方便的调用OSS的方法。

   const string accessKeyId = "xxxxxxxxx";                  
   const string accessKeySecret = "xxxxxxxxxx"; 
   const string endpoint = "oss-cn-beijing.aliyuncs.com";           //OSS对应的区域地址
   private static OssClient ossClient = new OssClient(endpoint, accessKeyId, accessKeySecret);

2.创建存储空间

很简单,只需要调用OssClient.CreateBucket

   ossClient.CreateBucket("myBucket");      //新建一个Bucket

3.设置读写权限

调用OssClient.SetBucketAcl

 ossClient.SetBucketAcl("myBucket", CannedAccessControlList.PublicRead);  //设置为公共读

CannedAccessControlList有三个属性:Private(私有),PublicRead(公共读),PublicReadWrite(公共读写)
4.跨域访问设置
调用OssClient.SetBucketCors

var req = new SetBucketCorsRequest("myBucket");
   var rule = new CORSRule();
   //指定允许跨域请求的来源
   rule.AddAllowedOrigin("*");
   //指定允许的跨域请求方法(GET/PUT/DELETE/POST/HEAD)
   rule.AddAllowedMethod("POST");
   //控制在OPTIONS预取指令中Access-Control-Request-Headers头中指定的header是否允许。
   rule.AddAllowedHeader("*");

   req.AddCORSRule(rule);
   ossClient.SetBucketCors(req);

5.上传文件

调用OssClient.PutObject

   var result = ossClient.PutObject("myBucket", "111.mp4", @"d:\237badef-0f6d-4a8e-a634-a44c9704b6e6.mp4");
   Console.WriteLine(result.ETag);

6.列出存储空间中的所有文件

调用ossClient.ListObjects

   var listObjectsRequest = new ListObjectsRequest("myBucket");
   var result = ossClient.ListObjects(listObjectsRequest);
   Console.WriteLine("List objects succeeded");
   foreach (var summary in result.ObjectSummaries)
   {
       Console.WriteLine("File name:{0}", summary.Key);
   }

详细笔记-jsweb直接提交:
http://www.cnblogs.com/wumian1360/p/8486726.html

阿里事例:

// Endpoint以杭州为例,其它Region请按实际情况填写。
String endpoint = "http://oss-cn-hangzhou.aliyuncs.com";
// 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
String accessKeyId = "<yourAccessKeyId>";
String accessKeySecret = "<yourAccessKeySecret>";

// 创建OSSClient实例。
OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);

// 上传文件。<yourLocalFile>由本地文件路径加文件名包括后缀组成,例如/users/local/myfile.txt。
ossClient.putObject("<yourBucketName>", "<yourObjectName>", new File("<yourLocalFile>"));

// 关闭OSSClient。
ossClient.shutdown();

记录;

@Autowired
	private OdsConfig config;

	public String put(String key, String name, InputStream io, long length, String contentType) {
		OSSClient client = new OSSClient(config.getEndpoint(), config.getAk(), config.getSk());
		ObjectMetadata meta = new ObjectMetadata();
		meta.setContentLength(length);
		meta.setContentType(contentType);
		String path = key + "/" + name;
		PutObjectResult result = client.putObject(config.getBucket(), path, io, meta);
		System.out.println(meta.getETag());
		System.out.println(result.getETag());
		return config.getBaseUrl() + "/" + path;
	}



@Test
	public void testPutObject() throws IOException {
		String filename = "dog.png";
		File file = new File("D:\\" + filename);
		InputStream io = FileUtils.openInputStream(file);
		long length = file.length();
		String url = ossService.put("animals", filename, io, length, "");
		System.out.println(url);
	}
  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值