23 lines
776 B
Python
23 lines
776 B
Python
from typing import Union
|
|
import base64
|
|
from urllib.parse import quote, urlencode
|
|
from dock.govs import govs_api
|
|
|
|
|
|
async def get_download_request(tenant_id: Union[int, str], file_url: str):
|
|
"""
|
|
创建从省12345下载文件的请求对象。方法仅创建请求对象,并未实际提交请求,具体由调度方法处理。
|
|
|
|
:param tenant_id: 租户id
|
|
:param file_url: 文件url
|
|
"""
|
|
api_url = '/file/api/system/downloadPermission'
|
|
b64_file_url = base64.b64encode(file_url.encode()).decode()
|
|
b64_file_url = quote(b64_file_url, safe="~*'()!.-_")
|
|
body = {
|
|
'tenantId': tenant_id,
|
|
'fileUrl': b64_file_url
|
|
}
|
|
api_url += f'?{urlencode(body)}'
|
|
return await govs_api.new_api_request(api_url, {})
|