Как решить проблему TypeError: Объект типа HttpResponse не является JSON сериализуемым?

Я пытаюсь вернуть файл model.pkl с помощью postman из API, сделанного в django rest framework. Однако в ответ я получаю TypeError: Object of type HttpResponse is not JSON serializable.

Следующий код - это то, что я использую для возврата файла, но я не могу понять, что происходит не так (это было вдохновлено этим постом).

from rest_framework.status import HTTP_200_OK
import pickle
from django.http import HttpResponse
from wsgiref.util import FileWrapper

# views.py
...
model_pickle_path = f'/path/model_state.pkl'
#model_pickle_trained = pickle.load(open(model_pickle_path, 'rb'))
model_pickle_trained = open(model_pickle_path, 'rb')

response = HttpResponse(FileWrapper(model_pickle_trained), content_type='application/octet-stream')
response['Content-Disposition'] = 'attachment; filename=%s' % model_filename_defined
return Response(data=response, status=HTTP_200_OK)

Traceback:
TypeError: Object of type HttpResponse is not JSON serializable
Вернуться на верх