python Django post方法报错

linux安装的django,用django自带的服务器,凡是遇到post传值时都报错。如下:403ForbiddenCSRFverificationfailed.Req... linux安装的django,用django自带的服务器,凡是遇到post传值时都报错。如下:403 Forbidden CSRF verification failed. Request aborted. Help Reason given for failure: No CSRF or session cookie.下面的提示信息太多就不放了。有知道原因的能否告知一声,分上次都捐出去了,没有分可以悬赏了。多谢各位。 展开
 我来答
匿名用户
推荐于2016-03-05
展开全部
  关于django的POST常见方法:
  1.用post方法去取form表单的值
  在取值前,先得判断是否存在这个key
  if not request.POST.has_key(strName):
  return ""
  if request.POST[strName]:
  return request.POST[strName]
  else:
  return ""

  2.用post方法获取[]类型的数据
  常见的,例如,每行数据前面都带个checkbox的操作。这时候可能会选多个checkbox,传入到后台时,如果用request.POST[strname]获取,那么只能获取到一个值。用下面的方法,可以获取到多值。
  if not request.POST.has_key(strName):
  return ""
  if request.POST[strName]:
  return ','.join(request.POST.getlist(strName))
  else:
  return ""
kaisa1028
2012-07-22 · TA获得超过1.1万个赞
知道大有可为答主
回答量:5429
采纳率:28%
帮助的人:2570万
展开全部
django有自带的CSRF保护,你需要在你的form元素的后面加上{% csrf_token %},然后在处理template的时候用 RequestContext代替Context。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
271680114
2012-07-24 · TA获得超过466个赞
知道小有建树答主
回答量:248
采纳率:0%
帮助的人:206万
展开全部
你可以在settings里csrf禁掉就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式