项目开发测试上传头像功能,使用postman模拟请求未返回任何数据
问题排查:
请求虽然未返回任何数据,但是状态码返回为200,明显请求是成功的
查看nginx 访问日志,发现请求方式被转发为GET请求。
查看nginx配置文件,符合转发规则的部分只有http请求转发为https。
server {
listen 80;
server_name www.zlq.com;
return 301 https://$server_name$request_uri;
}
怀疑是http请求转发为https时将POST请求转发为GET请求
在postman中,将http请求改为https请求后模拟,此时正常返回数据
问题原因:
查找了一部分资料说是 301 & 302 转发的时候将请求重定向且省略了中间信息返回的这一部分
这个时候可以使用307进行转发,307转发会在重定向中依旧保持原有的数据。