精华内容
下载资源
问答
  • 问题:由于我的拦截器没有放在zuul里面,而是放在每个api工程中发现 客户端发送请求到zuul的时候,zuul会过滤请求头(header),把一些敏感信息过滤(比如:cookie,Authorization,Set-Cookie) 解决方案一:在zuul...

    问题:由于我的拦截器没有放在zuul里面,而是放在每个api工程中发现 客户端发送请求到zuul的时候,zuul会过滤请求头(header),把一些敏感信息过滤(比如:cookie,Authorization,Set-Cookie)

    解决方案一:在zuul工程的配置文件(yml)中,添加
    在这里插入图片描述
    添加完了之后最好把所有工程重新启动一下,才会生效。

    解决方案二:在代码中通过过滤器向下传递

    @Component
    public class WebFilter extends ZuulFilter {
        @Override
        public String filterType() {
            return "pre";
        }
     
        @Override
        public int filterOrder() {
            return 0;
        }
     
        @Override
        public boolean shouldFilter() {
            return true;
        }
     
        @Override
        public Object run() throws ZuulException {
            System.out.println("zuul过滤器...");
            //向header中添加鉴权令牌
            RequestContext requestContext = RequestContext.getCurrentContext();
            //获取header
            HttpServletRequest request = requestContext.getRequest();
            String authorization = request.getHeader("Authorization");
            if(authorization != null) {
                System.out.println("authorization: " + authorization);
                requestContext.addZuulRequestHeader("Authorization", authorization);
            }
            return null;
        }
    }
    
    展开全文
  • axios请求拦截器

    千次阅读 2018-08-28 10:56:50
    问题: 访问某个地址页面时,会被要求重新登录后在访问,身份认证失效了 token问题: 1:token丢失 ...发送所有请求之前和操作服务器响应数据之前对这种情况过滤。 1.新建axios.js文件 import axios ...

    问题:

    访问某个地址页面时,会被要求重新登录后在访问,身份认证失效了

    token问题:

    1:token丢失

    2:token本地存在,但是却失效了

    所以不可以只判断是否token存在

    请求时服务器返回的是401错误,授权出错,也就是没有权利访问该页面。

    解决问题:

    发送所有请求之前和操作服务器响应数据之前对这种情况过滤。

    1.新建axios.js文件
    
    import axios from 'axios'//
    
    // http request 请求拦截器,有token值则配置上token值
    axios.interceptors.request.use(
        config => {
            if (token) {  // 每次发送请求之前判断是否存在token,如果存在,则统一在http请求的header都加上token,不用每次请求都手动添加了
                config.headers.Authorization = token;
            }
            return config;
        },
        err => {
    
            return Promise.reject(err);//请求错误时,直接结束
    
            //return Promise.resolve(err);//请求错误时,不会直接结束,将会继续传到then里面,无论请求成功还是失败,在成功的回调中都能收到通知
    
        });

    HTTP响应拦截器 拦截401错误,重新获取token

    // http response 服务器响应拦截器,这里拦截401错误,并重新跳入登页重新获取token
    axios.interceptors.response.use(
        response => {
            return response;
        },
        error => {
            if (error.response) {
                switch (error.response.status) {
                    case 400: err.message = '请求错误(400)' ; break;
                    case 401:
                        // 这里写清除token的代码
                        err.message = '未授权,请重新登录(401)';
                        router.replace({
                            path: 'login',
                            query: {redirect: router.currentRoute.fullPath}//登录成功后跳入浏览的当前页面
                        })
    
                        break;
                    case 403: err.message = '拒绝访问(403)'; break;
                    case 404: err.message = `请求出错(404)`; break;
                    case 408: err.message = '请求超时(408)'; break;
                    case 500: err.message = '服务器错误(500)'; break;
                    case 501: err.message = '服务未实现(501)'; break;
                    case 502: err.message = '网络错误(502)'; break;
                    case 503: err.message = '服务不可用(503)'; break;
                    case 504: err.message = '网络超时(504)'; break;
                    case 505: err.message = 'HTTP版本不受支持(505)'; break;
                    default: err.message = `连接出错(${err.response.status})!`;
    
                }
            }
            return Promise.reject(error.response.data) /请求错误时,直接结束
    
            //return Promise.resolve(error);//请求错误时,不会直接结束,将会继续传到then里面,无论请求成功还是失败,在成功的回调中都能收到通知
    
        });
    
    export default axios

    使用:

    在main.js入口文件,或者是调用接口请求方法的文件中,引入axios.js文件

     

    //引入axios.js文件
    import axios from './axios';
    //接口地址域名+端口号
    axios.defaults.baseURL =reqUrl.baseUrl;
    axios.defaults.timeout =2500;
    
    axios.defaults.responseType = 'json';
    
    axios.post(reqUrl.login,exted(data)).then(res => {
        cb && cb(res.data)
      }).catch(err =>{
      console.log(err);
      })

     

    展开全文
  • 因为,某些原因不能重新建一个文件系统,所以文件保存在其中一台tomcat上,目前的想法是配置nginx的转发规则,使上传下载的请求发送到同一台服务器,但是session会丢失,所以目前的问题是不是应该是解决session保持...
  • # 如果线程重新请求,那么请求将从缓存中读取,如果缓存中是空的或者是新的请求,那么这个线程将被重新创建,如果有很多新的线程, # 增加这个值可以改善系统性能.通过比较Connections和Threads_created状态的变量,...
  • 存储客户端向服务端发送请求消息默认method=get先看重定向在check.jsp进行校验如果登录成功在跳转到success页面这个是相对路径,此时这几个jsp文件在一个路劲里所以不用写相对路径重定向导致数据丢失可以拿到数据...

    abff9e39ec821e35f45124e80821e79f.png

    存储客户端向服务端发送的请求消息

    5d9f08e9bedbfd54f734b799be3c0851.png

    779024df71b8fae414e219b1ef865a05.png

    53cbf1fe3626f00a36dd4d08bb70c499.png

    8268ff0fdcb2a4419d3762a9c4b3124a.png

    b84b94e13d7db567a191b106b238abab.png

    c03aafe3087398e6352bd1727422da6c.png

    默认method=get

    ade10e3aa2a0aa8dbafe49836d11d0a2.png

    c2244ae8fe6ba4c587694a4d1738e23e.png

    先看重定向

    f30bc70c07df00176f4688286fd0de8c.png

    在check.jsp进行校验

    如果登录成功在跳转到success页面

    6df2b1efb16e9fc979aa84ec496f663b.png

    这个是相对路径,此时这几个jsp文件在一个路劲里所以不用写相对路径

    c726436b945036a16e677d73bd636fbf.png

    83be6ec166e7244bcaabf187ca16cfb1.png

    重定向导致数据丢失

    087a5d6a8c813d30151975b8232e9201.png

    2e1ded531ce34ef60392fee74bf41b6b.png

    可以拿到数据而且地址栏没有变化

    a5a29c031e2e2f3a6f02463946f3099e.png

    改为

    fb3e51d875e09f40411c47c8fb5ce023.png

    e1550aa9c26c9e8be7cb5df5e9b8f30b.png

    请求转发数据保留,如果重定向不会保留

    93a21c77c0481af8f70a5bac38936f95.png

    21b37735066b489294dbb70b74dab8b5.png
    重定向跳转,先返回再重新跳到新的页面

    997c73fd5b89f642de81cc4ce64238a6.png
    请求转发是request的,重定向是response的,会丢失数据,重定向需要先返回

    d4aba64023b55ca7fd97f161d9b8382c.png
    对于张三来说就跳转了一次

    86a036bd63d68857197e04db4f127889.png

    第一次在服务端观看电影,服务端产生一个缓存(Cookie)发送给客户端,客户端下次观看这个电影可以在本地观看

    49feb81a226b2894d3120a4d08d7e646.png

    必须获取全部的cookie

    107cc1452ac5d8c50be58d837faf9a22.png

    c8eb79e556a3af1bb0e53cc4b5f6e46a.png
    添加cookie

    56fb87e75f31957c3ea167f31296a827.png

    b0ae7a9185d3d4e4b6647a9e0a6e3c52.png

    f55b72496fdaa541425360b73f52903d.png

    1b92ec376f8d7e3296ae1f085df0981b.png

    d05fdf42a457cf818229aa24cc77b348.png

    解码方式/抓取关键字为uname的请求数据/建立cookie/把cookie通过跳转页面发回给客户端

    cookies流程:从客户端发送请求信息(数对 key-value),自动生成request对象,在check.jsp中通过request.getParameter("KeyWord")抓取关键字,生成Cookie(也是数对,注意Cookie的成员函数getValue,getName),response.addCookie(cookie);response.sendRedirect("A.jsp")

    这个时候数对发回客户端,Cookie[] cookies=request.getCookies(); for循环迭代遍历所有的cookie,找到那个关键字为uname的

    客户端都是本地客户端,所以不管什么浏览器都可以拿到

    4.session:会话

    cookie不是内置对象,session是内置对象

    a.浏览网站:开始-关闭

    b.浏览、付款、退出

    708c9b7ccfbb0aa8110275772cfd4e4d.png

    第一次请求时产生一个session对象,产生一个sessionID,服务端将这个sessionID复制一份到jsessionID里面去,放到一个cookie对象,在响应客户端时cookie的内容就传送到了客户端,两个ID一一对应用于区分客户,也就是cookie和session一一对应

    ef44dfe150b5537aba2c2cfb68b286f8.png

    ab0591955ca353cad8d86f9417b8c95b.png

    b8e3f8633d4b1e875dea40eed271b143.png

    405166331de761191cbcbd7047dbeb8f.png

    9d037d62105037e4413acb6cd2e279f7.png

    24d523f5d7a53aa391642f348bf2402f.png

    fd5353e730bfbd87e7a91edf9f16fc57.png

    deec66f1a690f1990620060ae939139f.png

    6af59133d990b8741a510e684d649b90.png
    请求转发到welcome.jsp

    b5150c0a3ceaea79af7d62208554226e.png

    1ad7752a57a280b831a9c90d9af61acc.png

    22e80ca7c3a5846bcaae310511ca478f.png

    490cb0d188a6e593e0fac408cb3e1d0b.png

    c75e49f03db3f467ecca289bbaafdc72.png

    59314a1dfd0181c3ddce25a7e526d53d.png

    当用firefox访问京东时,无论打开多少个页面,在一定时间内都不需要重新登录,因为一次访问共享一个session,但此时如果通过IE浏览器或者其他浏览器来访问京东时,需要重新登录

    5cf636f8e231bdc2f4641112c53ce9be.png

    将cookie返回给客户端,这样第二次请求的时候就有cookie了,根据cookie里jsession的值在服务端里匹配,如果匹配成功就不用重新登录了

    展开全文
  • 存储客户端向服务端发送请求消息默认method=get先看重定向在check.jsp进行校验如果登录成功在跳转到success页面这个是相对路径,此时这几个jsp文件在一个路劲里所以不用写相对路径重定向导致数据丢失可以拿到数据...

    75821b5e94810981d562fcf98d88a4f2.png

    存储客户端向服务端发送的请求消息

    04b5ba510e9871da6b3a9edd8c8dc72a.png

    8e864e24c564ca12b102d11818814d42.png

    f045bc8058d4ba311447027015480260.png

    63d4e07e7b540ba215330697673da6d7.png

    7c2d5030e530c6f146220304c86b1bcd.png

    0095497c097d8c29ede8e102c0a4508c.png

    默认method=get

    15fc822eac026107314a37d2070b775a.png

    4352ad86c22675fcdcfa7a875e47cd15.png

    先看重定向

    474315a42002f3ff450860ec4a9da4d8.png

    在check.jsp进行校验

    如果登录成功在跳转到success页面

    d0dfe6a4c7f9a7c8b27dcfda3342e2e5.png

    这个是相对路径,此时这几个jsp文件在一个路劲里所以不用写相对路径

    e5aa03ae6a1a6913ae2f1d6a9c331737.png

    f13269fe078bc01fa93f61e301eff40c.png

    重定向导致数据丢失

    9d07dc7eada95e9deeec8ececc6503a8.png

    dd83a95196b7ec1fe3fab5caae6d1f51.png

    可以拿到数据而且地址栏没有变化

    a4c0352d82b5b62849a68abb663aa26f.png

    改为

    d9691c5d2e556b0e0683b9d70d9bd4ec.png

    4ee0a8c75a77c37f2008355969a05f38.png

    请求转发数据保留,如果重定向不会保留

    827cf22ac3861c8ee5c388acc62d395c.png

    dd85fabd7001451e90ef89ac3e92bec4.png
    重定向跳转,先返回再重新跳到新的页面

    fe378d2a4641057e8c279f35b02c7fee.png
    请求转发是request的,重定向是response的,会丢失数据,重定向需要先返回

    f7e7ced4963170dc4738ee0b3153e2cf.png
    对于张三来说就跳转了一次

    c3dca745c490b3b3d9c7dc4941b64667.png

    第一次在服务端观看电影,服务端产生一个缓存(Cookie)发送给客户端,客户端下次观看这个电影可以在本地观看

    417dfe7caf3f84d2cb6cac273b02f74a.png

    必须获取全部的cookie

    04a8698b1c64783c0d2f1f93b418c2db.png

    8faff8c951898bf8923ff892a7258c97.png
    添加cookie

    688a09a1b302bd49d7597a88ec84b7eb.png

    7dff7538cd471dcf8f73ca8ab850f76f.png

    74363a67222da73a32c3efef65a42a2d.png

    3d46c80ad6733f2137b0e6b2e6a03ccf.png

    40aa0c4cae40229541f42d3d635539b9.png

    解码方式/抓取关键字为uname的请求数据/建立cookie/把cookie通过跳转页面发回给客户端

    cookies流程:从客户端发送请求信息(数对 key-value),自动生成request对象,在check.jsp中通过request.getParameter("KeyWord")抓取关键字,生成Cookie(也是数对,注意Cookie的成员函数getValue,getName),response.addCookie(cookie);response.sendRedirect("A.jsp")

    这个时候数对发回客户端,Cookie[] cookies=request.getCookies(); for循环迭代遍历所有的cookie,找到那个关键字为uname的

    客户端都是本地客户端,所以不管什么浏览器都可以拿到

    4.session:会话

    cookie不是内置对象,session是内置对象

    a.浏览网站:开始-关闭

    b.浏览、付款、退出

    f64b8901b1adf4c9fd85c9d4d9a52824.png

    第一次请求时产生一个session对象,产生一个sessionID,服务端将这个sessionID复制一份到jsessionID里面去,放到一个cookie对象,在响应客户端时cookie的内容就传送到了客户端,两个ID一一对应用于区分客户,也就是cookie和session一一对应

    4330e17dc7337eb70b9e04bbc890ba2b.png

    8c0e64b0e27b8024d9d5f7b2f3ec1845.png

    c6a5ef4406406aaa2eb7ab5cd48d74c3.png

    f03de48c56256bd19dd65e1dc164cf14.png

    233abddce725ce4c484220ee1f711333.png

    5f9bb58d8e0af8e65554e7561f7d3e3b.png

    b9594411625be447049c2e03ee92f4c4.png

    65a6158370c871193ef45590e1cf041a.png

    9f85c9ab9651fb3fadcbdb78f6439fb2.png
    请求转发到welcome.jsp

    46a9753326bdfb0e33a4a3f47d8fac84.png

    125f6b75386f7d3ba99d94d4c72f4665.png

    f72f7d1be4baaee0beb5320ce8b08da9.png

    9f1922ebf6906b1ed995c61077c1a349.png

    6ab346436d1a0eb6a55d67d826929b69.png

    07f9e45255a138b761afcafc096b6474.png

    当用firefox访问京东时,无论打开多少个页面,在一定时间内都不需要重新登录,因为一次访问共享一个session,但此时如果通过IE浏览器或者其他浏览器来访问京东时,需要重新登录

    36594b7e62f36a89ca4d0931a4cf72e6.png

    将cookie返回给客户端,这样第二次请求的时候就有cookie了,根据cookie里jsession的值在服务端里匹配,如果匹配成功就不用重新登录了

    展开全文
  • Redis主从复制

    2018-11-16 20:31:11
     slaver断线重启后,之前同步的RDB文件和AOF文件就会丢失,需要重新进行复制。—>因此如果多个Slave断线重启,就都会发送sync请求和主机全量同步,当多个同时出现的时候,可能会导致...
  • Redis是内存数据库,它将自己的数据库状态存储在内存里面,所以要提供RDB持久化功能来避免数据以为丢失。 ...只有在服务器执行完SAVE命令、重新开始接受命令请求之后,客户端发送的命令爱会被...
  • 除了 NetSupport 的一对一文件传输和一对多文件分发功能以外,具有创新性的“发送和收缴作业”工具允许教师通过单个操作向所有学生发送文档然后收缴,现在还提供对已发送各个文档的状态的实时反馈,使教师可以查看...
  • 节点发送请求,如果所查询的数据不在此节点中会通过重定向的方式到其他节点去查询信息。 首先要说的是,每一个节点都存有这个集群所有主节点以及从节点的信息。  它们之间通过互相的ping-pong判断是否节点可以...
  •  0212 区域已锁定,无法重新分配。  0214 附加到此程序或动态链接模块的动态链接模块太多。  0215 无法嵌套调用 LoadModule。  0216 图像文件 %1 有效,但不适用于本机类型。  0230 管道状态无效。 ...
  • 除了 NetSupport 的一对一文件传输和一对多文件分发功能以外,具有创新性的“发送和收缴作业”工具允许教师通过单个操作向所有学生发送文档然后收缴,现在还提供对已发送各个文档的状态的实时反馈,使教师可以查看...
  • 针对向后端发送接口请求:在客户端初始化 WebView 的同时,直接由 Native 开始网络请求数据,当页面初始化完成后,向 Native 获取其代理请求的数据。 </li><li> 针对加载的 js 动态拼接 ...
  • 7,把远程镜像文件映射成本地磁盘,这个部分对写操作要慎重处理,否则可能会丢失数据。 因为windows对磁盘读写的规律,一般都是缓存到系统缓冲中,不会实时刷新到磁盘扇区中。 目前还没找到办法如何把数据实时...
  • 2、EasySocket不但实现了包括TCP的连接和断开、数据的发送和接收、心跳保活、重连机制等功能,还实现了Socket层面的请求回调功能 3、消息结构使用的协议为:包头+包体,其中包体存储要发送的消息实体,而包头则存储...
  • 3.8 对数组进行重新排序 3.8.1 使用shuffle()函数 3.8.2 使用array_reverse()函数 3.9 从文件载入数组 3.10 执行其他的数组操作 3.10.1 在数组中浏览:each()、current()、reset()、end()、next()、pos()和prev...
  • PHP和MySQL Web开发第4版

    热门讨论 2014-08-13 15:32:15
    3.8 对数组进行重新排序 3.8.1 使用shuffle()函数 3.8.2 使用array_reverse()函数 3.9 从文件载入数组 3.10 执行其他的数组操作 3.10.1 在数组中浏览:each()、current()、reset()、end()、next()、pos()和prev...
  • 3.8 对数组进行重新排序 3.8.1 使用shuffle()函数 3.8.2 使用array_reverse()函数 3.9 从文件载入数组 3.10 执行其他的数组操作 3.10.1 在数组中浏览:each()、current()、reset()、end()、next()、pos()和prev() ...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。在系统关机前使用 shutdown命令,系统管理员会通知所有...
  • 多媒体教室

    2013-06-14 08:10:31
    学生在听课过程中可以使用电子举手请求教师回应。 学生登录后在右键菜单中选择电子举手或按 Scroll Lock 键即可发出举手信息。  3.4 远程消息 在右键菜单中选择远程消息后出现如下对话框: 学生可以在输入框中...
  • 尽可能提高速度,请发送有关此扩展程序中所需功能的请求:)! 版本历史记录:0.1.102:-嵌入现在比以前更清晰可见(无需重排即可获得完整大小)0.1.101:-帖子的“重排”(仪表板中的快捷键r)的需求要少得多,因为...
  • windowsnt 技术内幕

    2014-04-09 20:47:17
    把打印纸类型分配给打印纸盒 客户机打印是如何进行的 访问一个网络打印机 远程管理打印机 将打印作业重新发送给另一个打印服务器 打印机缓冲池(Printer Pool)简介 创建打印机缓冲池 打印机缓冲池中打印机放置的物理...
  • SSO-WebDemo

    2013-08-12 20:25:57
    用户在浏览器的地址栏输入页面的URL,浏览器就会向Web Server去发送请求。如下图,浏览器向Web服务器发送了两个请求,申请了两个页面。这两个页面的请求是分别使用了两个单独的HTTP连接。所谓无状态的协议也就是表现...
  • 11. 解决了易模块重新编译后"继续公开"选项自动丢失的问题. 12. 在IDE标题栏最左边显示当前工程的工程名(程序配置里的”程序名称”) 13. 增加了"指针到整数","指针到小数","指针到双精度小数"命令 14. 解决了窗口...
  • TCP_IP详解卷1

    热门讨论 2010-12-29 10:53:54
    文件共分12个压缩包,必须下载到同一个文件夹后解压才可以用哦~~ 简介: 《TCP/IP详解,卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用...
  • TCPIP详解卷[1].part12

    2010-12-29 11:12:15
    文件共分12个压缩包,必须下载到同一个文件夹后解压。 简介: 《TCP/IP详解,卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence ...
  • TCPIP详解卷[1].part11

    2010-12-29 11:09:56
    文件共分12个压缩包,必须下载到同一个文件夹后解压。 简介: 《TCP/IP详解,卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence ...
  • TCPIP详解卷[1].part09

    2010-12-29 11:05:16
    文件共分12个压缩包,必须下载到同一个文件夹后解压。 简介: 《TCP/IP详解,卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence ...

空空如也

空空如也

1 2 3 4
收藏数 63
精华内容 25
关键字:

文件丢失重新发送请求