1、本文要说什么
利用nc 直接与阿里云OSS服务器建立TCP 连接,通过输入HTTP 请求头部及数据与OSS进行交互,以此理解阿里云OSS服务的本质及使用阿里云OSS过程中的一些trouble shooting。
2、相关准备工作
一台连上互联网的Linux主机(如果没有可以购买一台阿里云ECS),注册并开通阿里云OSS服务(oss.aliyun.com)并创建一个bucket,本文以青岛的bucket:bucket-example(bucket-example.oss-cn-qingdao.aliyuncs.com) 为例进行一系列操作,为了简化演示步骤将bucket设置为public-read-write 公开读写,这样可以忽略签名。OSS 相关文档见oss.aliyun.com。
3、利用nc 从HTTP连接角度体验阿里云OSS
3.1、在OSS上创建一个新文件
用HTTP PUT 方法在OSS上创建一个新文件,先创建一个空文件吧
先根据OSS Restful API 把HTTP 请求构造出来,注意下面content-length 设置为0,这样就可以创建一个空文件
PUT /empty_file HTTP/1.1
Content-Length: 0
Host: bucket-example.oss-cn-qingdao.aliyuncs.com
利用nc 与oss 服务器80端口建立一条tcp链接
nc bucket-example.oss-cn-qingdao.aliyuncs.com 80
看结果,OSS 返回200 Ok,请求成功,注意下面的Etag,正好是一个空文件的md5,这样,一个空文件就创建成功了,可以去控制台上看看是否真的有。
接下来创建一个有内容的文件吧,把上面PUT 请求HTTP 头部的content-length 改成10试试。