2016-05-18 9 views
0

青写真とフラスコを使用してフラスコアプリからポストデータを取得するにはどうすればよいですか?なぜそんなに難しい?私のリソースファイルには、私のviews.pyファイルで青写真とrestfullを使用してフラスコ内のポストデータにアクセスする方法

api.add_resource(register, '/api/driver/register') 

from flask_restful import fields, marshal_with, reqparse, Resource 
class register(Resource): 
    def post(self): 
     ACCESS MY POST DATA!!!!!!!!!!!!! 
     return 'omg' 



curl -H "Content-Type: application/json" -X POST -d '{"f":"xyz","u":"xyz"}' http://0.0.0.0:5000/api/driver/register 

答えて

0

ここではあなたの例を適応したものです。あなたの輸入品に基づいて正しい道にいるように見えました。私の例では、2つのJSONパラメータ、つまり電子メールとモバイルを取り込み、JSON形式でエコーします。 args['email']およびargs['mobile']を使用して、処理およびビジネスロジックの値を参照することができます。

from flask_restful import fields, marshal_with, reqparse, Resource 
class register(Resource): 
    def post(self): 
     reqparse = reqparse.RequestParser() 
     reqparse.add_argument('email', type=str) 
     reqparse.add_argument('mobile', type=int) 
     args = reqparse.parse_args() 
     response = {'email': args['email'], 'mobile': args['mobile']} 
     response_fields = {'email': fields.String, 'mobile': fields.Integer} 
     return marshal(response, response_fields), 200 
0

これは私がやる方法です。

from flask_restful import fields, marshal_with, reqparse, Resource 


class Register(Resource): 

    def __init__(self): 
     self.reqparse = reqparse.RequestParser() 
     self.reqparse.add_argument('field_data_one', type=str, required=True, location='json') 
     self.reqparse.add_argument('field_data_two', type=str, required=True, location='json') 
     ... 

    def post(self): 
     args = self.reqparse.parse_args() 

     obj = { 
      'field_data_one': args['field_data_one'], 
      'field_data_two': args['field_data_two'] 
     } 

     return {'omg': obj}, 201 

     # ACCESS MY POST DATA!!!!!!!!!!!!! 
     # return 'omg' 
関連する問題