webapp2发布请求不接受json通过POSTMAN

时间:2016-02-05 06:59:45

标签: json http-post webapp2

这是我的webapp2代码

class SendMessage(webapp.RequestHandler):
    def post(self):
        messageToId = self.request.POST.get("messageToId")
        message = self.request.POST.get("message")
        logging.info(messageToId)

当我使用

在我的html中点击上面的方法时
        var url = 'http://myapp.appspot.com/sendmessage';

        var messageToId = document.getElementById("messageToId").value;
        var message = document.getElementById("message").value;
        var jsonDta =  {
                messageToId : messageToId,
                message : message
            };
        $.post(url, jsonDta, function(data, status) {
        });

这工作正常。但是当我使用邮递员(选择的帖子请求 - >原始数据 - > JSON /应用程序)尝试它时,它无法获取json数据并在开发者控制台中打印无。有什么问题?

1 个答案:

答案 0 :(得分:1)

在您的示例中,您不要在帖子中使用json有效负载 这是一个普通的表格帖子。要发布json,您必须JSON.stringify(jsonDta)

如果您发送json,您的处理程序如下所示:

import json
....

class SendMessage(webapp.RequestHandler):

    def post(self):

        json_string = self.request.body
        dict_object = json.loads(json_string)

        messageToId = dict_object['messageToId']
        message = dict_object.get('message', default='')
        logging.info(messageToId)