Генерация счета-фактуры в django с помощью API Shiprocket
Я пытаюсь сгенерировать счет-фактуру моего заказа на django с помощью API shiprocket. Пока что я получаю успешный ответ, но сгенерированный URL PDF несколько непонятен.
#Response Im get
"{\"is_invoice_created\":true,
\"invoice_url\":\"https:\/\/s3-ap-south-1.amazonaws.com\/kr-shipmultichannel-mum\/3116291\/invoices\/Retail000058ba9b309-c4bd-4c06-ba15-2cc76b7c5d1f.pdf\",
\"not_created\":[],\"irn_no\":\"\"}"
когда я пытаюсь получить доступ к вышеуказанному URL получаю - Access-Denied
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>94ARWRYHGSBEZEH1</RequestId>
<HostId>j32LvksmWatylm3TdFGYuJ1qvBwJ39Lj+qIbbQ3CC7AEcrgHnOYGd9fDocMeEwDD4GpzjXQLQhg=</HostId>
</Error>
Это то, как я хочу видеть url
https://s3-ap-south-1.amazonaws.com/kr-shipmultichannel-mum/3116291/invoices/Retail000058ba9b309-c4bd-4c06-ba15-2cc76b7c5d1f.pdf
Когда я удаляю косую черту, я получаю в Response возможность скачать PDF, и это делается вручную. Так как же мне получить рабочий URL.
#Views.py
class GenerateInvoice(APIView):
def post(self, request):
order_id = request.query_params.get("ids", None)
print(order_id)
data = json.dumps({"ids": [order_id]})
headers = {
"Content-Type": "application/json",
"Authorization": settings.SHIPROCKET_TOKEN,
}
url = "https://apiv2.shiprocket.in/v1/external/orders/print/invoice"
response = requests.post(url=url, data=data, headers=headers)
return Response(response)
Я думаю, что результатом является объект response. Попробуйте добавить следующее
response = json.loads(response.decode("utf-8")))