【发布时间】:2020-06-07 22:05:24
【问题描述】:
我的应用程序中有这个视图,它调用 api 来下载 pdf:
@login_required
def generateContractPdf(request):
file_id = request.POST.get('contract')
contract_id = request.POST.get('contract')
payload = {"file_id": file_id}
data = {"data": json.dumps(payload, default=str)}
headers = {'content-type': 'application/json'}
brokkr = os.environ.get("BROKKR_ADDRESS", default='localhost')
response = requests.post('http://'+brokkr+':5000/contract', params=data, headers=headers)
filename=str(contract_id)+".pdf"
response = HttpResponse(response.content, content_type='application/pdf')
response['Content-Disposition'] = 'attachment; filename="'+filename+'"'
return response
但我刚刚意识到,如果我不使用 render(),csrf 就不起作用,所以这个视图可能会被利用。
我怎样才能改变它以保持这种保护?
【问题讨论】: