Method: Baidu::PCS::Client#restore

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

#restore(fs_id) ⇒ Hash #restore(fs_ids) ⇒ Hash

Note:

非强一致接口,调用后请sleep 1秒读取

单个或批量还原文件/目录

Overloads:

  • #restore(fs_id) ⇒ Hash

    还原单个文件或目录

    Examples:

    还原成功返回的原始 JSON

    {"extra":{"list":[{"fs_id":"1356099017"}]},"request_id":3775323016}
    

    See Also:

  • #restore(fs_ids) ⇒ Hash

    批量还原文件或目录

    Examples:

    全部还原成功返回的原始 JSON

    {"extra":{"list":[{"fs_id":"3275514389"}]},"request_id":3859098573}
    

    部分还原成功返回的原始 JSON

    {"error_code":31078,"error_msg":"invalid fs id","extra":{"list":[{"fs_id":"706533300"}]},"request_id":3825218191}
    

    全部还原失败返回的原始 JSON

    {"error_code":31078,"error_msg":"invalid fs id","extra":{"list":[]},"request_id":805400333}
    

    See Also:



976
977
978
979
980
981
982
983
984
985
986
987
# File 'lib/baidu/pcs/client.rb', line 976

def restore(fs_ids)
  query = case fs_ids
          when String
            { fs_id: fs_ids }
          when Array
            fs_ids = fs_ids.map { |id| { fs_id: id } }
            { param: JSON.dump({ list: fs_ids }) }
          else
            raise ArgumentError, 'fs_id(s) must be kind of String or Array'
          end
  post "#{BASE_PATH}/file", query.update(base_query 'restore')
end