Мне нужна небольшая помощь, я пытаюсь загрузить содержимое файла JSON в свой код через REST API, я не хочу загружать его, я не хочу загружать его, я просто хочу, чтобы он читать с помощью rest call, где я передаю имя файла:
urls.py
**url(r'^api/postCNMetadata/(?P<filename>[^/]+)$', PostCNMetadataToDB.as_view()),**
viewsets.py
from rest_framework.parsers import FileUploadParser
class PostCNMetadataToDB(APIView):
'''
Posting data from json file to DB.
'''
parser_classes = (FileUploadParser,)
def put(self, request, filename, format=None):
try:
file_obj = request.FILES['file']
return Response("success", status = status.HTTP_200_OK)
except Exception as e:
return Response("error", status = status.HTTP_404_NOT_FOUND)
Затем я запускаю эту команду:
wget -q -O - --no-check-certificate "http://serverhost:8000/api/postCNMetadata/image-metadata-artifact.json/"
Я не уверен, что я делаю здесь неправильно. Но я получаю эту ошибку:
2020-03-05 12:16:43,400 [INFO][sshtunnel.ForwardServer:34] Server Fowarded extending SocketServer.ThreadingTCPServer parmiko class
/proj/lciadm100/cifwk/my_repo/ERICcifwk/ERICcifw_reporting/django_proj/dmt/infoforConfig.py:9: DeprecationWarning: the sets module is deprecated
from sets import Set
Traceback (most recent call last):
File "/usr/lib64/python2.6/wsgiref/handlers.py", line 94, in run
self.finish_response()
File "/usr/lib64/python2.6/wsgiref/handlers.py", line 135, in finish_response
self.write(data)
File "/usr/lib64/python2.6/wsgiref/handlers.py", line 223, in write
self._write(data)
File "/usr/lib64/python2.6/socket.py", line 324, in write
self.flush()
File "/usr/lib64/python2.6/socket.py", line 303, in flush
self._sock.sendall(buffer(data, write_offset, buffer_size))
error: [Errno 104] Connection reset by peer
----------------------------------------
Exception happened during processing of request from ('10.59.140.55', 53707)
Traceback (most recent call last):
File "/usr/lib64/python2.6/SocketServer.py", line 560, in process_request_thread
self.finish_request(request, client_address)
File "/usr/lib64/python2.6/SocketServer.py", line 322, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/proj/lciadm100/cifwk/latest/lib/python/django/core/servers/basehttp.py", line 126, in __init__
super(WSGIRequestHandler, self).__init__(*args, **kwargs)
File "/usr/lib64/python2.6/SocketServer.py", line 618, in __init__
self.finish()
File "/usr/lib64/python2.6/SocketServer.py", line 661, in finish
self.wfile.flush()
File "/usr/lib64/python2.6/socket.py", line 303, in flush
self._sock.sendall(buffer(data, write_offset, buffer_size))
error: [Errno 32] Broken pipe
----------------------------------------