2016-12-08 5 views
2

В views.py этот код в view.py четкости Сохранить (запрос):Как использовать API POST Rest на Django Web? хотят потреблять API регистрации пользователя в Джанго и вот код, который я сделал

 if request.method == "POST": 
      user=request.POST 
      email=user.get("email") 
      password=user.get("password") 
      print "password",password 
      display_name= request.POST.get('displayname') 
      hometown = request.POST.get('hometown') 
      gender = request.POST.get('radios') 
      occupation= request.POST.get('occupation') 
      services.post_register(email,password,display_name,gender) 

в Service.py код service.py это-

def post_register(email,password,display_name,gender): 
    postdata={'email':email,'password':password,'display_name':display_name,'gender':gender,'} 

    response = requests.post('http://www.example.com/rest-auth/users/1/', 
        data=json.dumps(postdata)) 

АВЭС работает это я получаю ответ 415. спасибо

+0

Вы получили косую апострофа перед вашей закрывающей скобкой на 'PostData = ...' линии. Это случайность при копировании или фактическая ошибка? – asongtoruin

ответ

1

415 код ошибки означает, что тип носителя не поддерживается. Я думаю, вы можете просто заменить json.dumps(postdata) на postdata. Глядя на requests библиотеках вам не нужно:

r = requests.post('http://httpbin.org/post', data = {'key':'value'}) 
+0

Спасибо за ваш ответ, всякий раз, когда мне это нравится, я получил ошибку 500 (внутренняя ошибка сервера). Я сделал то же, что и предложил. –

+0

Можете ли вы вставить полную Stacktrace? – javidgon

+0

большое спасибо. ваша помощь сработала, я столкнулся с ошибкой аутентификации –