对象存储BOS

    PutNotification

    接口描述

    本接口用于指定bucket上增加通知规则。

    注意:

    • 只有bucket owner或者full control权限才能获取这个bucket的配置。
    • 如果不是bucket owner则返回403,如果对应的文件不存在则返回404。

    请求

    • 请求语法

      PUT /?notification HTTP/1.1
      Host: <BucketName>.bj.bcebos.com
      Date: <Date>
      Authorization: <AuthorizationString>
      Content-Type: application/json; charset=utf-8
      Content-Length: <ContentLength>
    • 请求参数

    字段 类型 必要性 说明
    id String 必选 规则id
    name String 可选 规则名称
    appId String 必选 注册本条规则的产品id
    status String 必选 可选值:{"disabled", "enabled"}
    encryption Object 可选 加密方式
    +key String 可选 加密密钥,如果不为空,则用IAM的算法对通知的请求进行签名,key对应IAM签名中的SecretAccessKey
    resources[] Array 必选 订阅的资源
    +resource String 必选 订阅的资源,${bucket_name}/path1/*.jpg或者/path1/*.jpg,最多只能有1个*
    events[] Array 必选 订阅的事件
    +eventType String 必选 事件类型,当前支持:
    - PutObject:普通上传Object
    - PostObject:表单上传Object
    - AppendObject:追加上传Object
    - CopyObject:拷贝Object
    - CompleteMultipartUpload:完成Object分片上传
    - FetchObject:抓取Object,包含镜像回源等产生的抓取
    - DeleteObject:删除Object
    - DeleteMultipleObjects:删除多个Object
    apps[] Array 必选 订阅消息的产品
    +id String 必选 被通知的产品id
    +eventUrl String 必选 处理事件通知的url,可选值:{"http", "https", "brn", "app"},http/https为自定义应用,brn为cfc的通知,app为官方应用
    +xVars String 可选 透传的自定义参数,对框架透明,用于业务自我回传的值,如果是官方AI应用,则是一个字符串化的json,并包含一个saveUrl的地址,用于接收处理结果

    如果仅用于配置通知或者回调的密钥,可以简化为如下参数:

    字段 类型 必要性 说明
    id String 必选 规则id
    name String 可选 规则名称
    appId String 必选 注册本条规则的产品id
    status String 必选 可选值:{"disabled", "enabled"}
    encryption Object 可选 加密方式
    +key String 可选 加密密钥,如果不为空,则用IAM的算法对通知的请求进行签名,key对应IAM签名中的SecretAccessKey
    • 请求头域

    响应

    • 响应头域

    • 响应元素

    示例

    • 请求示例

      PUT /?notification HTTP/1.1
      Host:  <BucketName>.bj.bcebos.com
      Date: Wed, 12 Sep 2018 06:34:40 GMT
      Authorization: <AthorizationString>
      Content-Type: application/json; charset=utf-8
      Content-Length: 0
      
      {
          "notifications": [
              {
                  "id": "notify-id-1",
                  "name": "rule-name",
                  "appId": "app-id-1",
                  "status": "enabled",
                  "encryption": {
                      "key": "06a62b70f47dc4a0a7da349609f1a1ac",
                  },
                  "resources": [
                      "bucket-a/path1", "/path2", "/path3/*.jpg", "/path4/*"
                  ],
                  "events": [
                      "PutObject"
                  ],
                  "apps": [
                      {
                          "id": "app-id-1",
                          "eventUrl": "http://xxx.com/event",
                          "xVars": ""
                      },
                      {
                          "id": "app-id-2",
                          "eventUrl": "brn:bce:cfc:bj:1f1c3e38xxxxxxxx4c44523f0d5b22:function:hello_bos:$LATEST"
                      },
                      {
                          "id": "app-id-3",
                          "eventUrl": "app:ImageOcr",
                          "xVars": "{\"saveUrl\": \"http://xxx.com/ocr\"}"
                      }
                  ]
              }
          ]
      }
    • 响应示例

      HTTP/1.1 200 OK
      x-bce-request-id: 4db2b34d-654d-4d8a-b49b-xxxxxx786409
      Date: Wed, 12 Sep 2018 06:34:40 GMT
      Content-Length: 0
      Connection: close
      Server: BceBos
    上一篇
    原图保护
    下一篇
    GetNotification