aliyun_oss v0.2.1 Aliyun.Oss.Object
Object 相关操作
Link to this section Summary
Functions
GetObject 用于获取某个 Object
GetObjectACL 用来获取某个Bucket下的某个Object的访问权限。
HeadObject只返回某个Object的meta信息,不返回文件内容。
生成包含签名的 URL
Link to this section Types
Link to this type
error()
error()
error() :: Aliyun.Oss.Client.Error.t() | atom()
error() :: Aliyun.Oss.Client.Error.t() | atom()
Link to this section Functions
Link to this function
get_object(bucket, object, headers \\ %{}, sub_resources \\ %{})
GetObject 用于获取某个 Object
Examples
iex> Aliyun.Oss.Object.get_object("some-bucket", "some-object")
{:ok, %Aliyun.Oss.Client.Response{
data: <<208, 207, 17, 224, 161, 177, 26, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 62, 0, 3, 0, 254, 255, 9, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18,
0, 0, 0, ...>>,
headers: [
{"Date", "Wed, 05 Dec 2018 02:34:57 GMT"},
...
]
}
}
亦可用于获取某个 Object 指定 SubResource(GetObjectXXX)。
Examples
iex> Aliyun.Oss.Object.get_object("some-bucket", "some-object", %{}, %{"acl" => nil})
{:ok, %Aliyun.Oss.Client.Response{
data: %{
"AccessControlPolicy" => %{
"AccessControlList" => %{"Grant" => "default"},
"Owner" => %{
"DisplayName" => "1111111111111111",
"ID" => "1111111111111111"
}
}
},
headers: [
{"Date", "Wed, 05 Dec 2018 02:34:57 GMT"}
]
}
Link to this function
get_object_acl(bucket, object)
get_object_acl(bucket, object)
get_object_acl(String.t(), String.t()) ::
{:error, error()} | {:ok, Aliyun.Oss.Client.Response.t()}
get_object_acl(String.t(), String.t()) :: {:error, error()} | {:ok, Aliyun.Oss.Client.Response.t()}
GetObjectACL 用来获取某个Bucket下的某个Object的访问权限。
Examples
iex> Aliyun.Oss.Object.get_object_acl("some-bucket", "some-object")
{:ok, %Aliyun.Oss.Client.Response{
data: %{
"AccessControlPolicy" => %{
"AccessControlList" => %{"Grant" => "default"},
"Owner" => %{
"DisplayName" => "1111111111111111",
"ID" => "1111111111111111"
}
}
},
headers: [
{"Date", "Wed, 05 Dec 2018 02:34:57 GMT"}
]
}
Link to this function
head_object(bucket, object, headers \\ %{})
head_object(bucket, object, headers \\ %{})
head_object(String.t(), String.t(), map()) ::
{:error, error()} | {:ok, Aliyun.Oss.Client.Response.t()}
head_object(String.t(), String.t(), map()) :: {:error, error()} | {:ok, Aliyun.Oss.Client.Response.t()}
HeadObject只返回某个Object的meta信息,不返回文件内容。
Examples
iex> Aliyun.Oss.Object.head_object("some-bucket", "some-object")
{:ok,
%Aliyun.Oss.Client.Response{
data: "",
headers: [
{"Server", "AliyunOSS"},
{"Date", "Wed, 05 Dec 2018 05:50:02 GMT"},
{"Content-Type", "application/octet-stream"},
{"Content-Length", "0"},
{"Connection", "keep-alive"},
{"x-oss-request-id", "5C0000000000000000000000"},
{"Accept-Ranges", "bytes"},
{"ETag", ""D4100000000000000000000000000000""},
{"Last-Modified", "Mon, 15 Oct 2018 01:38:47 GMT"},
{"x-oss-object-type", "Normal"},
{"x-oss-hash-crc64ecma", "0"},
{"x-oss-storage-class", "IA"},
{"Content-MD5", "1B2M2Y8AsgTpgAmY7PhCfg=="},
{"x-oss-server-time", "19"}
]
}}
iex> Aliyun.Oss.Object.head_object("some-bucket", "unknown-object")
{:error, %Aliyun.Oss.Client.Error{status_code: 404, body: "", parsed_details: nil}}
Link to this function
object_url(bucket, object, expires)
生成包含签名的 URL
Examples
iex> expires = Timex.now() |> Timex.shift(days: 1) |> Timex.to_unix()
iex> Aliyun.Oss.Object.object_url("some-bucket", "some-object", expires)
"http://oss-example.oss-cn-hangzhou.aliyuncs.com/oss-api.pdf?OSSAccessKeyId=nz2pc56s936**9l&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv4%3D"