Python почтовый запрос возвращает URL вместо строки base64 - PullRequest
1 голос
/ 23 января 2020

Я вызываю API, который требует отправки запроса для создания отчета о загрузке данных в виде строки в кодировке base64 или файла на веб-сайте внешнего интерфейса. Мой текущий код генерирует ответ типа запросы.model.Response. Когда я призываю к JSON, вывод:

  {'errorMessage': '', 
'fileName': 'Reports\\test_2.csv', 
'file': '', 
'URI': 'HTTPS://C31.IT.COM/API/services/V167.0/files?fileName=Reports%5ctest_2.csv'}

Строка base64 не генерируется и файл на сайте не генерируется. Как мне получить вывод? Строка base64 генерируется, когда я пробую ее с сайта API. Мой код выглядит следующим образом:

 reportId = '350048'
fileName = 'test_2.csv'
startDate = (date.today() - timedelta(days=1)).isoformat()
endDate = (date.today()).isoformat()
saveAsFile = 'true'
includeHeaders = 'true'
BASEURL = (data["resource_server_base_uri"])
accessToken = (data["access_token"])
# =============================================================================
payload={'reportId' : reportId,
'fileName' : fileName,
'startDate' : startDate,
'endDate' : endDate,
'saveAsFile' : saveAsFile,
'includeHeaders' : includeHeaders
}
# =============================================================================
#add all necessary headers
header_param = {'Authorization': 'bearer ' + accessToken,
                 'content-Type': 'application/x-www-form-urlencoded',
                 'Accept': 'application/json, text/javascript, */*'}

# Make http post request
response_2 = requests.post(BASEURL +'/services/v17.0/report-jobs/datadownload/'+ reportId +
                                   '?startDate=' + startDate + '&endDate=' + endDate + '&saveAsFile=' + saveAsFile + '&includeHeaders=' + includeHeaders ,
                                   headers = header_param, data = payload )
...