如何在django 接收post数据中接收JSON格式的数据

返回json数据无法使用$.each()遍历_问答_ThinkSAAS
返回json数据无法使用$.each()遍历
返回json数据无法使用$.each()遍历
使用$.get()向后台(使用Django)请求数据,生成JSON格式数据返回。 回调函数中能够收到数据(使用alert(data)显示返回的数据)。但是使用$.each()却无法遍历data。 将alert函数中显示的返回数据拷贝并替换each中的data,each却能正常工作。 我在后台试了将Content-Type设置为plain,javascript和json都无效,请问该如何解决这个问题?
添加你想要问的问题
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信[转载](zz)如何在Django中接收JSON格式的数据
jquery&发送json&至&服务端&处理Django做了大量工作简化我们的Web开发工作,
这其中当然也包括接收来自客户端的数据这一普遍需求.
大部分时候,从客户端传入的数据主要是FORM的POST数据,和来自URL的GET数据,
在Django中对应了HttpRequest对象的POST和GET属性, 例如读取FORM表单中的用户名username输入框的内容:
def someView(request):
username = request.POST.get('username');
在WEB2.0时代, 如果我们从客户端传入的是JSON格式的数据, 上面的方法就无法正常读出数据了.
可能有人要问,为什么一定要用JSON格式的数据, 不直接编码成FORM形式的数据呢? 因为JSON格式能够更好地体现数据的层次结构,
而FORM形式的数据往往只能是单层.
下面通过一个例子演示如何从HTML中发送json,并在Django中接收json数据.
在HTML中,可以通过JSON对象将数据以Json格式发送到服务器,假设在play.html中有以下内容要发送到服务器:
用户名username
密码password
一个数组,其中每个元素包含: 游戏编号game_id和得分level
那么, 可以使用如下JavaScript(JQuery)代码:
&script type="text/javascript"&
$(function() {
$('#upload').click(function() {
var json_obj = {
username: $('#username').val(),
password: $('#password').val(),
game_id: $('#datas1').val(),
level: $('#level1').val()
game_id: $('#datas2').val(),
level: $('#level2').val()
//JSON对象
var json_str = JSON.stringify(json_obj);
//将JSON对象转变成JSON格式的字符串
$.post("/datasave", json_str, callback, "json");
function callback(json){
$('#response').html('code:'+json['status']['code'] + "tmessage:" + json['status']['message']);
在上面的代码中, 数据将发送到/datasave, 在Django中,视图方法若还使用request.POST来读数据,
得到的全是None, 这时得使用request.raw_post_data,
并借助simplejson来将其转换为字典dict数据类型, 然后的使用就简单了,如下:
def datasave(request):
&dict = {}
info = 'Data log save success'
if request.method == 'POST':
req = simplejson.loads(request.raw_post_data)
username = req['username']
password = req['password']
datas = req['datas']
game_id1 = datas[0]['game_id']
import sys
info = "%s || %s" % (sys.exc_info()[0], sys.exc_info()[1])
dict['message']=info
dict['create_at']=str(ctime())
json=simplejson.dumps(dict)
return HttpResponse(json)
request.raw_post_data表示的是从客户端发送过来的原始数据,为了纯字符串,
通过simplejson的loads方法将其转换为字典数据类型req.
上面的代码也演示了如何以JSON格式作为响应值, 而非HTML,
即通过simplejson的dumps方法,
将字典数据dict序列化为字符串形式,将通过HttpResponse返回.
http://rooger.me/2011/04/receive_json_in_django/
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Tony_zhangl的喜欢 | LOFTER(乐乎) - 记录生活,发现同好
LOFTER for ipad —— 记录生活,发现同好
Tony_zhangl 的喜欢
&nbsp&nbsp被喜欢
&nbsp&nbsp被喜欢
{list posts as post}
{if post.type==1 || post.type == 5}
{if !!post.title}${post.title|escape}{/if}
{if !!post.digest}${post.digest}{/if}
{if post.type==2}
{if post.type == 3}
{if !!post.image}
{if post.type == 4}
{if !!post.image}
{if !!photo.labels && photo.labels.length>0}
{var wrapwidth = photo.ow < 500?photo.ow:500}
{list photo.labels as labs}
{var lbtxtwidth = Math.floor(wrapwidth*(labs.ort==1?labs.x:(100-labs.x))/100)-62}
{if lbtxtwidth>12}
{if !!labs.icon}
{list photos as photo}
{if photo_index==0}{break}{/if}
品牌${make||'-'}
型号${model||'-'}
焦距${focalLength||'-'}
光圈${apertureValue||'-'}
快门速度${exposureTime||'-'}
ISO${isoSpeedRatings||'-'}
曝光补偿${exposureBiasValue||'-'}
镜头${lens||'-'}
{if data.msgRank == 1}{/if}
{if data.askSetting == 1}{/if}
{if defined('posts')&&posts.length>0}
{list posts as post}
{if post_index < 3}
{if post.type == 1 || post.type == 5}
{if !!post.title}${post.title|escape}{/if}
{if !!post.digest}${post.digest}{/if}
{if post.type == 2}
{if post.type == 3}
{if post.type == 4}
{if drlist.length>0}
更多相似达人:
{list drlist as dr}{if drlist.length === 3 && dr_index === 0}、{/if}{if drlist.length === 3 && dr_index === 1}、{/if}{if drlist.length === 2 && dr_index === 0}、{/if}{/list}
暂无相似达人,
{if defined('posts')&&posts.length>0}
{list posts as post}
{if post.type == 2}
{if post.type == 3}
{if post.type == 4}
this.p={ dwrMethod:'queryLikePosts',fpost:'1cc7b162_3b2559e',userId:,blogListLength:14};json文件+导入+mysql_壮志凌云
json文件+导入+mysql
以下内容已过滤百度推广
日&-&刚开始学习java同学就给了一个json格式的文本要出入到数据库里,查了一些资料上午搞定了,写一下记录下来,可能处理json格式的方法不是太好,希望大神们能...&&普通
日&-&php把json数据导入mysql数据失败 [问题点数:20分,结帖人huige728]
收藏 ...我在重新添加了下数据,数据还是到了id=30的时候不添加了,但是提示都添加成...&&普通
最佳答案: 返回的就是json字符串,可以直接存入php mysql_query(&insert into table(info) values(&#39;&.$info.&&#39;)&);&&百度知道
日&-&前文中我们把网络爬虫爬取的数据保存为json格式,但为了能够更方便地处理数据,我们希望把这些数据导入到mysql数据库中。phpmyadmin可以把mysql数据库中...&&普通
日&-&v2ex > mysql 求能把 json 文件导入 mysql 数据库的工具1
meteor2013·
08:00:12 +08:00 · 3180 次点击 ...&&普通
日&-&本文要讨论的内容,是如何方便地将多种格式(json, text, xml, csv)的数据导入mysql之中。 本文大纲: 将text文件(包括csv文件)导入mysql 将xml文件导入m...&&普通
使用php json_encode 过,直接存入mysql报错,google一下 没有找到合适的解决方法,请问如何处理才能将json格式的数据存入mysql 代码: $imgs_str = json_encode($img...&&普通
日&-&这篇文章主要介绍了android通过json向mysql中读写数据的方法,结合实例形式较为详细的分析了android json类的定义、调用及php接收json数据并写入mysql...&&普通
日&-&本文要讨论的内容,是如何方便地将多种格式(json, text, xml, csv)的数据导入mysql之中。 本文大纲: 将text文件(包括csv文件)导入mysql 将xml文件导入m...&&普通
日&-&如何将从接口取到的json数据存入mysql数据库 [问题点数:40分,结帖人shijing266]
本版等级: 本版专家分:0
结...&&普通
语义关联近似词猜&正规性45地理位置网址标题|网址|摘要F0略略分类信息&|&猜&非正规中略略略精确匹配1略略分类信息&|&猜&非正规中略略略精确匹配2略略分类信息&|&猜&非正规中略略略精确匹配3略略分类信息&|&猜&非正规中略略略精确匹配4略略分类信息&|&猜&非正规中略略略精确匹配5略略分类信息&|&猜&非正规中略略略精确匹配6略略分类信息&|&猜&非正规中略略略同义词7略略分类信息&|&猜&非正规中略略略精确匹配8略略分类信息&|&猜&非正规中略略略精确匹配9略略分类信息&|&猜&非正规中略略略同义词10
12时间限制猜&实时动态5相关检索词泛时效性8F1略略略略略略略略1略略略略略略略略2略略略略百度知道略略略3略略略略略略略略4略略略略略略略略5略略略略略略略略6略略略略略略略略7略略略略略略略略8略略略略略略略略9略略略略略略略略10
url2345摘要前标题后标题F2略略略略略正文略1略略略略略正文略2略略略略略正文略3略略略略略正文略4略略略略略正文略5略略略略略正文略6略略略略略正文略7略略略略略略略8略略略略略正文略9略略略略略正文略10
123原创猜&网址形式6相关词猜&相似度F3略略略略子页优先级较低略略精确匹配1略略略略子页优先级较低略召回精确匹配2略略略略子页优先级较低略召回精确匹配3略略略略子页优先级较低略召回精确匹配4略略略略子页优先级较低略略精确匹配5略略略略子页优先级较低略略精确匹配6略略略略子页优先级较低略召回近义词匹配7略略略略主页次优先&|&子页内容充实略召回精确匹配8略略略略子页优先级较低略略精确匹配9略略略略子页优先级较低略召回近义词匹配10如何在Django中接收JSON格式的数据
如何在Django中接收JSON格式的数据
Django做了大量工作简化我们的Web开发工作, 这其中当然也包括接收来自客户端的数据这一普遍需求. 大部分时候,从客户端传入的数据主要是FORM的POST数据,和来自URL的GET数据, 在Django中对应了HttpRequest对象的POST和GET属性, 例如读取FORM表单中的用户名username输入框的内容:def someView(request):
username = request.POST.get('username');
......在WEB2.0时代, 如果我们从客户端传入的是JSON格式的数据, 上面的方法就无法正常读出数据了. 可能有人要问,为什么一定要用JSON格式的数据, 不直接编码成FORM形式的数据呢? 因为JSON格式能够更好地体现数据的层次结构, 而FORM形式的数据往往只能是单层.下面通过一个例子演示如何从HTML中发送json,并在Django中接收json数据.在HTML中,可以通过JSON对象将数据以Json格式发送到服务器,假设在play.html中有以下内容要发送到服务器:用户名username密码password一个数组,其中每个元素包含: 游戏编号game_id和得分level那么, 可以使用如下JavaScript(JQuery)代码:&script type="text/javascript"&
$(function() {
$('#upload').click(function() {
var json_obj = {
username: $('#username').val(),
password: $('#password').val(),
game_id: $('#datas1').val(),
level: $('#level1').val()
game_id: $('#datas2').val(),
level: $('#level2').val()
//JSON对象
var json_str = JSON.stringify(json_obj);
//将JSON对象转变成JSON格式的字符串
$.post("/datasave", json_str, callback, "json");
function callback(json){
$('#response').html('code:'+json['status']['code'] + "\tmessage:" + json['status']['message']);
&/script&在上面的代码中, 数据将发送到/datasave, 在Django中,视图方法若还使用request.POST来读数据, 得到的全是None, 这时得使用request.raw_post_data, 并借助simplejson来将其转换为字典dict数据类型, 然后的使用就简单了,如下:def datasave(request):
info = 'Data log save success'
if request.method == 'POST':
req = simplejson.loads(request.raw_post_data)
username = req['username']
password = req['password']
datas = req['datas']
game_id1 = datas[0]['game_id']
import sys
info = "%s || %s" % (sys.exc_info()[0], sys.exc_info()[1])
dict['message']=info
dict['create_at']=str(ctime())
json=simplejson.dumps(dict)
return HttpResponse(json)request.raw_post_data表示的是从客户端发送过来的原始数据,为了纯字符串, 通过simplejson的loads方法将其转换为字典数据类型req.上面的代码也演示了如何以JSON格式作为响应值, 而非HTML, 即通过simplejson的dumps方法, 将字典数据dict序列化为字符串形式,将通过HttpResponse返回.
发表评论:
TA的最新馆藏[转]&[转]&[转]&[转]&}

我要回帖

更多关于 django post json数据 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信