无法读取应用引擎中的帖子数据(can not read post data in app engine)

编程入门 行业动态 更新时间:2024-10-24 18:21:56
无法读取应用引擎中的帖子数据(can not read post data in app engine)

我正在尝试以下列方式将数据发布到App Engine:

sendMessage = function(path, data) { $.ajax({ type: "POST", url: path, data: data, contentType: "application/json", dataType: "json", failure: function(errMsg) { alert(errMsg); }, success: function(result,status,xhr){ alert(result); } }); }; sendMessage('/chatMessage', {"message": "aaaa"});

接收代码:

class ChatMessage(webapp2.RequestHandler): def post(self): user = users.get_current_user() message = self.request.get("message", "fail") logging.error('RequestBody:' + str(self.request.body)) logging.error('Message:' + message)

日志消息:

ERROR 2013-05-18 16:23:31,954 channels.py:52] RequestBody:message=aaaa ERROR 2013-05-18 16:23:31,956 channels.py:53] Message:fail INFO 2013-05-18 18:23:31,983 server.py:585] default: "POST /chatMessage HTTP/1.1" 200 2

显然,消息在服务器上完整,因为它message=aaaa但为什么我不能“获取”来自请求的消息?

I'm trying to post data to App Engine in the following manner:

sendMessage = function(path, data) { $.ajax({ type: "POST", url: path, data: data, contentType: "application/json", dataType: "json", failure: function(errMsg) { alert(errMsg); }, success: function(result,status,xhr){ alert(result); } }); }; sendMessage('/chatMessage', {"message": "aaaa"});

The receiving code:

class ChatMessage(webapp2.RequestHandler): def post(self): user = users.get_current_user() message = self.request.get("message", "fail") logging.error('RequestBody:' + str(self.request.body)) logging.error('Message:' + message)

The log messages:

ERROR 2013-05-18 16:23:31,954 channels.py:52] RequestBody:message=aaaa ERROR 2013-05-18 16:23:31,956 channels.py:53] Message:fail INFO 2013-05-18 18:23:31,983 server.py:585] default: "POST /chatMessage HTTP/1.1" 200 2

Obviously the message got on the server intact since it says message=aaaa But why can't I "get" the message from the request?

最满意答案

发出POST请求时,您可以将数据编码到URL中,也可以将数据放入请求的正文中。

request.get()将在url中获取urlencoded参数。

在您的情况下,您将数据放在请求的正文中,因此一切正常。 如果您需要数据,则应从请求正文中解析它。

When you issue a POST request, you can either encode data into the URL, or put the data in the body of the request.

request.get() will get urlencoded parameters in the url.

In your case, you are putting the data in the body of the request, so everything is working properly. If you want the data, you should parse it from the request body.

更多推荐

本文发布于:2023-08-07 12:54:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1464268.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:引擎   帖子   数据   read   engine

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!