uni-app——一种通过Nginx反向代理处理302重定向请求解决网络请求中无法获取Cookie的解决方案

Posted Starzkg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了uni-app——一种通过Nginx反向代理处理302重定向请求解决网络请求中无法获取Cookie的解决方案相关的知识,希望对你有一定的参考价值。

问题描述

  1. 小程序中不会自动保存和发送Cookie
  2. 使用插件(https://uniapp.dcloud.io/api/request/request)方法不能解决302重定向情况下获取Cookie
  3. 小程序端经过分析无法实现,服务端亦无法修改(这既不能解决问题,也不能解决提出问题的人)

问题分析

  1. 配置一层nginx
  2. 处理302为200,并且继承Cookie。

解决方案

配置一层Nginx

 		location /jwglxt {
            proxy_pass http://jwglxt.zstu.edu.cn;
            proxy_intercept_errors on;
            error_page 301 302 307 = @handle_redirects;
        }

        location @handle_redirects {
           set $jsessionid "JSESSIONID=$upstream_cookie_JSESSIONID; Path=/jwglxt; HttpOnly";
            add_header 'Set-Cookie' $jsessionid;
            return 200 ;
        }

参考文章

Nginx upstream指令配置说明
nginx反向代理处理302跳转
nginx return配置说明
网络请求302跳转

以上是关于uni-app——一种通过Nginx反向代理处理302重定向请求解决网络请求中无法获取Cookie的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

10. Nginx实现反向代理

nginx反向代理

Nginx 反向代理原理以及和LVS的区别

nginx反向代理

web服务之nginx反向代理功能

web服务之nginx反向代理功能