这个问题真的坑
本是写登录功能,结果post请求一直有问题。
以为是函数代码问题,一直在测试
人家虽然转换为了get请求,但还是进入我那个函数运行了;哎
结果是我url多写了一个‘/’
我原来在login后面写了一个‘/’,导致重定向。
原文链接:
https://blog.csdn.net/weixin_43409302/article/details/83756204
首先是背景故事:
我的安卓项目需要向页面(
Django
2)发
post
请求
安卓发送端用的 https://www.cnblogs.com/jycboy/p/
post
01.html 的代码
在pycharm debug的时候发现变成了get!
(战术留图)
我甚至抓了
post
请求
包
(假装有图)
在url定向的时候,如果末尾不是‘/’,会被系统
重
定向到带‘/’的url,即301错误,然后空...
请求
是指浏览器通过HTTP协议发送给服务器端的数据,响应是指服务器端接收到
请求
后做相应的处理后再回复给浏览器端的数据
请求
中,最常见和常用的也是最
重
要的
请求
就是GET
请求
和
POST
请求
了,各自有优势,前者较快,后者较安全。由于
Django
有一定的安全保护措施,目前为了方便看到
POST
的
请求
,可以关掉
django
的csrf验证。
在配置文件setting.py中将csrf验证注释即可
下面也是通过一个数据传输打印的小例子来理解。urls.py:
views.py:
配置好访问
http://127.0.0.1:
答案:**
请求
协议错了 ,请检查协议。**如果心急的就不用往下看了——特指jmeter接口
请求
测试中有时要把用域名访问的接口,切换为用IP访问,这时,往往
请求
结果会出现Java报错,而且
请求
中 原本的
post
请求
会自动变成get
请求
!
(先看前三张图片尝试找报错原因!)
解决方法就是 把协议使用正确了,IP用HTTP协议 域名一般会使用https协议!
ps:扩展:Java调试时,也可能出现
post
请求
被转换为get
请求
的报错:
#部分代码#
let instance = a
[04/Mar/2021 15:36:32] "OPTIONS /goods/goods HTTP/1.1" 301 0
[04/Mar/2021 15:36:32] "GET /goods/goods/ HTTP/1.1" 200 1344
然后去找了
Django
的官方文档,发现APPEND_SLASH属性。
APPEND_SLASH Default: True When set t
前端的
post
请求
到后端变成了get
请求
,什么鬼?
本人在编写flask服务器项目过程中,需要从前端接收用户的登录信息,将用户信息保存进session和cookie中。
后端代码如下:
@app.route('/login',methods=['GET','
POST
'])
def login_views():
if request.method == 'GET':
# 判断...