Aliyun.Oss.Bucket.put_bucket

You're seeing just the function put_bucket, go back to Aliyun.Oss.Bucket module for more information.
Link to this function

put_bucket(bucket, headers \\ %{}, sub_resources \\ %{}, body \\ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<CreateBucketConfiguration>\n <StorageClass>Standard</StorageClass>\n</CreateBucketConfiguration>\n")

Specs

put_bucket(String.t(), map(), map(), String.t()) ::
  {:error, error()} | {:ok, Aliyun.Oss.Client.Response.t()}

PutBucket接口用于创建 Bucket

Examples

iex> Aliyun.Oss.Bucket.put_bucket("new-bucket", %{"x-oss-acl" => "private"})
{:ok,
%Aliyun.Oss.Client.Response{
  data: "",
  headers: [
    {"Server", "AliyunOSS"},
    {"Date", "Fri, 11 Jan 2019 04:35:39 GMT"},
    {"Content-Length", "0"},
    {"Connection", "keep-alive"},
    {"x-oss-request-id", "5C381D000000000000000000"},
    {"Location", "/new-bucket"},
    {"x-oss-server-time", "438"}
  ]
}}
iex> Aliyun.Oss.Bucket.put_bucket("new-bucket", %{"x-oss-acl" => "invalid-permission"}) # get error
{:error,
%Aliyun.Oss.Client.Error{
  parsed_details: %{
    "ArgumentName" => "x-oss-acl",
    "ArgumentValue" => "invalid-permission",
    "Code" => "InvalidArgument",
    "HostId" => "new-bucket.oss-cn-shenzhen.aliyuncs.com",
    "Message" => "no such bucket access control exists",
    "RequestId" => "5C3000000000000000000000"
  },
  body: "<?xml version="1.0" encoding="UTF-8"?>...</xml>",
  status_code: 400
}}

注:所有 SubResource 相关操作亦可由此接口实现, 即 Bucket.Acl.put("some-bucket", "private") 等同于 Bucket.put_bucket("some-bucket", %{"x-oss-acl" => "private"}, %{"acl" => "private"}, "")