49.Python-web框架-Django解决多语言redirect时把post改为get的问题

目录

1.背景

2.思路

[3.寻找 Find and Replace](#3.寻找 Find and Replace)

4.再次运行程序,POST来了

5.小结


1.背景

昨天在练习一个Django功能时,把form的method设置为POST,但是实际提交时,一直是GET方法。最后发现这是与多语言相关,django前面的多语言设置,会自动加上语言的路径,从而有了重定向这个操作,把POST变成了GET。

2.思路

对于昨天的问题,今晨继续搜索,找到一篇相关的博文,

记录一次nginx重定向以后POST请求变为GET请求的解决【转发】_302重定向成get请求-CSDN博客

这里面提到:

有缓存的301和308,浏览器在接收一次重定向以后,会缓存重定向的地址,以后请求会直接访问重定向的地址;
同时301-302-303的重定向会将请求方法改为使用GET请求
而308-307不会,所以我将nginx的重定向更改为307

3.寻找 Find and Replace

使用Find and Replace这个小工具,可以搜索文件内容,非常好用。

打开response.py文件,搜索302

修改并保存:

4.再次运行程序,POST来了

5.小结

  • 修改源码这种事,尽量少做。必要的时候,还是得做。
  • 博文记录,随时记录,如果没有其他人的博文,也很难找到思路。
相关推荐
绝无仅有16 小时前
Elasticsearch经典面试题案例分析
后端·面试·架构
绝无仅有16 小时前
面试实战:如何实现一个完整的项目从注册到登录的功能?
后端·面试·架构
byzh_rc16 小时前
[操作系统入门] 零散知识点
人工智能·python·机器学习
程序员三藏16 小时前
Web自动化测试:数据驱动实战
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
Michelle802316 小时前
24大数据 14-1 函数
开发语言·python
z***677716 小时前
Spring Data 什么是Spring Data 理解
java·后端·spring
嫂子的姐夫16 小时前
03-多进程
爬虫·python·多进程
free-elcmacom16 小时前
Python信号分析项目:高速数字系统的眼图破案记
开发语言·python
f***a34616 小时前
SpringBoot 如何调用 WebService 接口
java·spring boot·后端
AI弟16 小时前
大语言模型进阶(一)之大语言模型基础
人工智能·python·深度学习·机器学习·语言模型·自然语言处理