美文网首页
【Django】有效解决postman进行post请求时服务器返

【Django】有效解决postman进行post请求时服务器返

作者: sunshine_hanxx | 来源:发表于2020-09-12 16:25 被阅读0次

    一、问题描述

    在学习Django框架时,使用postman工具模拟客户端的各种请求,今天在使用类视图时遇到了一些问题:使用GET方式进行请求时,服务器处理ok,返回200状态码,但是换成POST请求时,服务器总是返回500状态码,其结果如下:


    image

    使用GET方式进行请求:


    image
    检查了下代码,没有发现什么问题,类视图代码如下:
    [图片上传失败...(image-47158c-1599899133194)]

    url配置也没有问题
    [图片上传失败...(image-ef9c94-1599899133194)]
    网上找了一下相关问题,发现很多都是提交的JSON数据格式有误等导致,但是我试着不提交任何数据还是会出现同样的问题,于是把postman各个位置的按钮都尝试着点了下,终于发现了问题所在。

    二、分析原因

    点击Body下面的Preview,发现其提示“RuntimeError at /center”,后面有一段解释,大致意思是django中设置了一个选项APPEND_SLASH=True,当前POST请求url中必须末尾有个'/',我又去项目的settings文件中去找了下,并没有发现这个设置,可能是django默认设置的。


    image

    三、解决办法

    发现是因为url末尾缺少了'/'后,再url末尾加上'/'再试一下发现果然成功啦。


    image

    不过比较奇怪的是以GET方式进行请求时末尾不加/是可以请求成功的,不知道是不是因为django默认设置的问题。

    相关文章

      网友评论

          本文标题:【Django】有效解决postman进行post请求时服务器返

          本文链接:https://www.haomeiwen.com/subject/jvvwektx.html