Method: Baidu::PCS::Client#query_task

Defined in:
lib/baidu/pcs/client.rb

#query_task(task_id, options = {}) ⇒ Hash #query_task(task_ids, options = {}) ⇒ Hash

精确查询离线下载任务

根据任务ID号,查询离线下载任务信息及进度信息

Examples:

查询进度信息,返回的原始 JSON

{
  "task_info": {
    "23998044": {
      "create_time": "1384703711",
      "start_time": "1384703711",
      "finish_time": "1384703717",
      "file_size": "0",
      "finished_size": "0",
      "task_name": "1.dmg",
      "save_path": "/apps/album/1.dmg",
      "source_url": "https://example.com/1.dmg",
      "status": "1",
      "result": 0
    }
  },
  "request_id": 631260401
}

:result 0查询成功,结果有效,1要查询的task_id不存在
:status 0下载成功,1下载进行中 2系统错误,3资源不存在,4下载超时,
        5资源存在但下载失败 6存储空间不足 7任务取消
:status status为0、1时,其余字段有效

查询任务信息,返回的原始 JSON

{
  "task_info": {
    "23654044": {
      "source_url": "https://example.com/1.dmg",
      "finished_size": "0",
      "save_path": "/apps/album/1.dmg",
      "rate_limit": "0",
      "timeout": "3600",
      "callback": "",
      "status": "7",
      "create_time": "1384703711",
      "task_name": "1.dmg",
      "od_type": "0",
      "result": 0
    }
  },
  "request_id": 689959608
}

:result      0查询成功,结果有效,1要查询的task_id不存在
:source_url  下载数据源地址
:save_path   下载完成后的存放地址
:status      0下载成功,1下载进行中 2系统错误,3资源不存在,4下载超时,
             5资源存在但下载失败 6存储空间不足 7目标地址数据已存在 8任务取消
:create_time 任务创建时间

Overloads:

  • #query_task(task_id, options = {}) ⇒ Hash

    Parameters:

    • task_id (String)

      要查询的任务ID

    Returns:

    • (Hash)
  • #query_task(task_ids, options = {}) ⇒ Hash

    Parameters:

    • task_ids (Array<String>)

      要查询的任务ID

    Returns:

    • (Hash)

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :op_type (Fixnum)

    0:查任务信息;1:查进度信息;默认为1

  • :expires (Fixnum)

    请求失效时间,如果有,则会校验

Returns:

  • (Hash)

See Also:



836
837
838
839
840
# File 'lib/baidu/pcs/client.rb', line 836

def query_task(task_ids, options={})
  task_ids = task_ids.join(',') if task_ids.is_a? Array
  query = { task_ids: task_ids }.update options
  post "#{BASE_PATH}/services/cloud_dl", query.update(base_query 'query_task')
end