FetchObject
更新时间:2023-06-14
接口描述
此接口用于从指定URL抓取资源,并将资源存储到指定的Bucket中。此操作需要请求者对该Bucket有写权限,每次只能抓取一个Object,且用户可以自定义Object的名称。
说明:
- FetchObject接口抓取资源的大小限制为0~10GB。
请求(Request)
-
请求语法
POST /<ObjectName>?fetch HTTP/1.1 Host: <BucketName>.bj.bcebos.com Content-Length: 0 Date: <Date> x-bce-fetch-source: <Source> x-bce-fetch-mode: <FetchMode> x-bce-storage-class: <StorageClass> Authorization: AuthorizationString
-
请求头域
名称 类型 描述 是否必需 x-bce-fetch-source String 抓取文件的源地址,如 http://www.abc.com/img.jpg
。该参数可以放到querystring里,当放到querystring时需要做UrlEncode。是 x-bce-fetch-mode String 抓取模式,支持异步抓取 async
和同步抓取sync
两种模式。其中异步模式下BOS收到抓取任务后立刻返回成功,同步模式下BOS需要等到抓取Object完成后才会返回成功。对于数据量小或关注抓取结果实时性的建议使用同步模式,异步模式不需要等待,适用不需要实时查看抓取结果的场景,可以后续再对抓取结果进行查询。默认值为sync
。 该参数可以放到querystring里。否 x-bce-storage-class String 存储类型,支持标准存储 STANDARD
、低频存储STANDARD_IA
、冷存储COLD
和归档存储ARCHIVE
,默认存储为STANDARD
;如果是多AZ类型bucket,支持MAZ_STANDARD_IA
代表多AZ低频存储,不指定时默认是MAZ_STANDARD
多AZ标准存储类型,不能是其它取值。该参数可以放到querystring里。否 x-bce-server-side-encryption String 服务端加密算法,当前支持AES256和SM4加密。 否 x-bce-callback-address String fetch结果回调地址,若选择异步抓取,抓取完成后会将结果推送到该地址。 否 referer string 源站fetch时需要透传的Referer头域 否 user-agent string 源站fetch时需要透传的User-Agent头域 否 -
请求参数
无
响应(Response)
-
响应头域
无
-
响应参数
名称 类型 描述 code String 返回请求成功或失败的返回码,成功返回 success
,错误返回错误码。message String 返回请求成功或失败的信息,成功返回 success
,错误返回code对应的错误码。requestId String 请求ID。 jobId String 异步模式才会返回该参数,表示请求任务的ID号,可用于后续任务状态查询。
示例
-
请求示例(同步模式)
POST /ObjectName?fetch HTTP/1.1 Host: BucketName.bj.bcebos.com Content-Length: 0 Date: <Date> x-bce-fetch-source: http://www.abc.com/demo.html x-bce-fetch-mode: sync x-bce-storage-class: STANDARD Authorization: AuthorizationString
-
响应示例(同步模式)
HTTP/1.1 200 OK x-bce-request-id: 4db2b34d-654d-4d8a-b49b-3049ca786409 Transfer-Encoding: chunked Date: Wed, 25 May 2016 06:34:40 GMT Server: BceBos { "code": "success", "message": "success", "requestId": "4db2b34d-654d-4d8a-b49b-3049ca786409", }
-
请求示例(异步模式)
POST /ObjectName?fetch HTTP/1.1 Host: BucketName.bj.bcebos.com Content-Length: 0 Date: <Date> x-bce-fetch-source: http://www.abc.com/demo.html x-bce-fetch-mode: async x-bce-storage-class: STANDARD_IA Authorization: AuthorizationString
-
响应示例(异步模式)
HTTP/1.1 200 OK x-bce-request-id: 4db2b34d-654d-4d8a-b49b-3049ca786409 Content-Length: 43 Date: Wed, 25 May 2016 06:34:40 GMT Server: BceBos { "code": "success", "message": "success", "requestId": "4db2b34d-654d-4d8a-b49b-3049ca786409", "jobId": "b2419b1e3fd45d596ee22bdf62aaaa2f" }
-
请求示例(异步模式,通知回调地址)
POST /ObjectName?fetch HTTP/1.1 Host: BucketName.bj.bcebos.com Content-Length: 0 Date: <Date> x-bce-fetch-source: http://www.abc.com/demo.html x-bce-fetch-mode: async x-bce-storage-class: STANDARD_IA x-bce-callback-address:<callback-address> Authorization: AuthorizationString
-
响应示例(异步模式,通知回调地址)
HTTP/1.1 200 OK x-bce-request-id: 4db2b34d-654d-4d8a-b49b-3049ca786409 Content-Length: 43 Date: Wed, 25 May 2016 06:34:40 GMT Server: BceBos { "code": "success", "message": "success", "requestId": "4db2b34d-654d-4d8a-b49b-3049ca786409", "jobId": "b2419b1e3fd45d596ee22bdf62aaaa2f" }
回调地址收到的信息示例如下
{"code":"success","jobid":"fo-9a98f238d56a33b4eb6664fede20b747","message":"success","requestId":"61c41bdf-672b-49c4-921e-3d6bde8112a6"}
{"code":"NoSuchKey","jobid":"fo-9a98f238d56a33b4eb6664fede20b747","message":"The specified key does not exist.","requestId":"24ff8d6c-f793-45ef-b55b-973837141c90"}