Ошибка конфигурации : Имя запроса DNS не существует:_mongodb._tcp.nonr.mongodb.net
ConfigurationError at /testapi/
Имя DNS-запроса не существует: _mongodb._tcp.none.mongodb.net.
utlis.py для извлечения списка баз данных из базы данных mongo Этот код работает нормально при запуске на другом файле python, но я получаю ошибку при запуске с проектом django.
from urllib.parse import quote_plus
from pymongo import MongoClient
def auth(username, password, cluster_uri):
username = quote_plus(username)
password = quote_plus(password)
conn_str = "mongodb+srv://{}:{}@{}.mongodb.net/?retryWrites=true&w=majority".format(
username,
password,
cluster_uri
)
return MongoClient(conn_str)
def getDatabaseList(username, password, cluster_address):
client = auth(username, password, cluster_address)
dbs = client.list_database_names() # returns a list of databases
return dbs
views.py
from rest_framework import status
from rest_framework.decorators import permission_classes
from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework.permissions import AllowAny, IsAuthenticated
from .utils import getDatabaseList
u/permission_classes([AllowAny])
class TestViewSet(APIView):
def post(self, request):
username = request.data.get('username')
password = request.data.get('password')
cluster_address = request.data.get('cluster_address')
dblist = getDatabaseList(username, password, cluster_address)
return Response({'dblist': dblist}, status=status.HTTP_200_OK)
Я получил решение Вместо использования request.get.data('name') использование request.POST['name'] сработало некорректно