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.小结

  • 修改源码这种事,尽量少做。必要的时候,还是得做。
  • 博文记录,随时记录,如果没有其他人的博文,也很难找到思路。
相关推荐
yihuiComeOn18 分钟前
[源码系列:手写Spring] AOP第二节:JDK动态代理 - 当AOP遇见动态代理的浪漫邂逅
java·后端·spring
门框研究员22 分钟前
解锁Python的强大能力:深入理解描述符
python
e***71671 小时前
Spring Boot项目接收前端参数的11种方式
前端·spring boot·后端
程序猿小蒜1 小时前
基于springboot的的学生干部管理系统开发与设计
java·前端·spring boot·后端·spring
子不语1802 小时前
Python——函数
开发语言·python
q***56382 小时前
Spring容器初始化扩展点:ApplicationContextInitializer
java·后端·spring
daidaidaiyu2 小时前
一文入门 LangChain 开发
python·ai
菜鸟‍2 小时前
【后端学习】MySQL数据库
数据库·后端·学习·mysql
Codebee3 小时前
30 分钟落地全栈交互:OneCode CLI+SVG 排课表实战
后端
JJ1M83 小时前
用 Python 快速搭建一个支持 HTTPS、CORS 和断点续传的文件服务器
服务器·python·https