Postman将json数据post给Flask并存储到mangodb数据库中

# mongo.py

from flask import Flask, jsonify, request
from flask_pymongo import PyMongo
from flask_restful import Resource, Api

app = Flask(__name__)
api = Api(app)

app.config['MONGO_DBNAME'] = 'restdb'
app.config['MONGO_URI'] = 'mongodb://localhost:27017/restdb'

app.url_map.strict_slashes = False # Disable redirecting on POST method from /star to /star/

mongo = PyMongo(app)

class Star(Resource):
    def get(self, name):
        star = mongo.db.stars
        s = star.find_one({'name' : name})
        if s:
            output = {'name' : s['name'], 'distance' : s['distance']}
        else:
            output = "No such name"
        return jsonify({'result' : output})

class StarList(Resource):
    def get(self):
        star = mongo.db.stars
        output = []
        for s in star.find():
            output.append({'name' : s['name'], 'distance' : s['distance']})
        return jsonify({'result' : output})

    def post(self):
        star = mongo.db.stars

        name = request.json['name']
        distance = request.json['distance']
        star_id = star.insert({'name': name, 'distance': distance})
        new_star = star.find_one({'_id': star_id })
        output = {'name' : new_star['name'], 'distance' : new_star['distance']}
        return jsonify({'result' : output})

api.add_resource(StarList, '/star')
api.add_resource(Star, '/star/<string:name>')

if __name__ == '__main__':
    app.run(debug=True)

注意:PostMan需要配置:

1、Headers中Content-Type为application/json

2、body中json数据最好写成如下格式

{
	"name": "dng",
	"distance": "123123"
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值