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

  • 修改源码这种事,尽量少做。必要的时候,还是得做。
  • 博文记录,随时记录,如果没有其他人的博文,也很难找到思路。
相关推荐
RoyLin9 小时前
TypeScript设计模式:迭代器模式
javascript·后端·node.js
爱海贼的无处不在10 小时前
一个需求竟然要开14个会:程序员的日常到底有多“会”?
后端·程序员
IT_陈寒11 小时前
Java 性能优化:5个被低估的JVM参数让你的应用吞吐量提升50%
前端·人工智能·后端
南囝coding11 小时前
《独立开发者精选工具》第 018 期
前端·后端
绝无仅有11 小时前
数据库MySQL 面试之死锁与排查经验总结
后端·面试·github
用户3849587306912 小时前
Spring Boot 集成 Redis 的完整流程
后端
昨日的风12 小时前
springboot 多数据源切换
后端
绝无仅有12 小时前
mysql性能优化实战与总结
后端·面试·github
用户83562907805112 小时前
从手动编辑到代码生成:Python 助你高效创建 Word 文档
后端·python
c8i12 小时前
python中类的基本结构、特殊属性于MRO理解
python