2016-08-05 5 views
0

사용자를 생성하기 위해 파이썬에서 API를 개발하려고합니다. 아래는 제 코드입니다. "[email protected]" "암호"내 REST 클라이언트에서 실행하면글로벌 이름 'reqparse'가 정의되지 않았습니다.

from flask import Flask 
    from flask_restful import Resource, Api 
    app = Flask(__name__) 
    api = Api(app) 

    class CreateUser(Resource): 
     def post(self): 
      try: 
      # Parse the arguments 
       parser = reqparse.RequestParser() 
       parser.add_argument('email', type=str, help='Email address to create user') 
       parser.add_argument('password', type=str, help='Password to create user') 
       args = parser.parse_args() 
       _userEmail = args['email'] 
       _userPassword = args['password'] 
       return {'Email': args['email'], 'Password': args['password']} 

      except Exception as e: 
       return {'error': str(e)} 
    api.add_resource(CreateUser, '/CreateUser') 
    if __name__ == '__main__': 
     app.run(debug=True) 

는 그러나, 나는 { "이메일"로 클라이언트에 JSON 형식의 이메일과 비밀번호를 게시 : "ABC" }

내가 { "오류"로 REST 클라이언트 몸에 오류가 발생 : }

"전역 이름 'reqparse이'정의되지 않았습니다" 나는 플라스크 - 평온한 모든 플라스크 라이브러리가 설치된 Python 2.7 64bit를 가지고있다. 누군가 내게 수정을 말할 수 있습니까 ???

+0

당신은 수입하지 않는 'reqparse'. –

+0

나는 그 일을 고마워했다. :) 이제 나는 내가 올린 글을 얻는 대신 이메일과 패스워드 모두에 null을 받는다. 당신은 내가 무엇을 놓치고 있는지 알려줄 수 있습니까 –

답변

0

파서를 인스턴스화하고 요청 처리기 앞에 인수를 추가 할 수 있습니다. 난 당신의 게시물의 댓글에서 말했다 api = Api(app)

+0

그게 도움이되지 않습니다. –

+0

응답 본문에 null과 같은 이메일과 비밀번호가 모두 생깁니다. –

+0

요청 본문에 의미가 있습니까? –

0

으로 후 라인에

# Parse the arguments 
    parser = reqparse.RequestParser() 
    parser.add_argument('email', type=str, help='Email address to create user') 
    parser.add_argument('password', type=str, help='Password to create user') 

이동 평균, 당신은 reqparse 가져와야 :

from flask_restful import Resource, Api, reqparse 

을 그리고 널의 다른 문제에 대한 수신, 당신은 사건에 조심해야합니다. 당신이 보내는 경우 는 : { "Email" : "[email protected]" , "Password" : "abc" }를, 파이썬 코드는 그렇게 할 필요가 :

parser.add_argument('Email', type=str, help='Email address to create user') 
parser.add_argument('Password', type=str, help='Password to create user') 

(I 직접 코멘트에 응답 할 수 없습니다 미안 해요, 내가하지 않아도 충분히 명성)

+0

동일하게 시도했지만 전자 메일 및 암호에 대해서는 null을 계속 시도합니다. –

관련 문제