Как передать данные формы во внешний API с помощью POST-запроса в функции представления django?
Как передать данные формы внешнему API с помощью POST-запроса в функции представления Django?
Мой API не получает данные моей формы.
@csrf_protect
def home_page(request):
context = {}
if request.method =='POST':
form = UserForm(request.POST)
if form.is_valid():
# form.save()
resp = requests.post('http://127.0.0.1:8000/user_api/save_user/',params=request.POST).json()
print(resp,' - type = ',type(resp))
context = {'success_message':'User registered successfully..!'}
else:
context = {'error_message':'Invalid Form Inputs'}
form = UserForm()
context.update({'form':form})
return render(request,'home/index.html',context)
Мой API
class UserAPI(APIView):
def post(self,request):
serializer = UserSerializer(data=request.data)
if serializer.is_valid():
serializer.save()
resp = {'resp' : 'User saved successfully..!'}
print('data saved \n\n\n\n\n\n')
else:
resp = {'resp' : 'Invalid data..!'}
print(serializer.errors,'invalid data \n\n\n\n\n\n')
return Response(resp)
Output : {'first_name': [ErrorDetail(string='This field is required.', code='required')], 'last_name': [ErrorDetail(string='This field is required.', code='required')], 'phone': [ErrorDetail(string='This field is required.', code='required')], 'email': [ErrorDetail(string='Это поле обязательно.', code='required')], 'пароль': [ErrorDetail(string='Это поле обязательно.', code='required')]} invalid data
resp = requests.post('http://127.0.0.1:8000/user_api/save_user/',data=request.POST).json()
Мне просто нужно заменить params на data