Cookies littleproxy中的Http会话

Cookies littleproxy中的Http会话,cookies,session-cookies,basic-authentication,httpsession,little-proxy,Cookies,Session Cookies,Basic Authentication,Httpsession,Little Proxy,我们如何在littleproxy中处理http会话?我读过两种方法,一种是使用HTTP cookies,另一种是HTTP身份验证头 littleproxy支持cookie处理还是支持身份验证头并向浏览器客户端发送质询响应401 另一方面,Cookie方法依赖于web服务器。在web服务器分配它之前,用户/浏览器将无法使用它 我需要实现一个场景,在该场景中,我需要跟踪每个用户在HTTP代理上的交互,并根据其配置文件为每个用户提供特定的处理,例如,我可以为给定用户阻止或删除网页中的图像,但允许其他用

我们如何在littleproxy中处理http会话?我读过两种方法,一种是使用HTTP cookies,另一种是HTTP身份验证头

littleproxy支持cookie处理还是支持身份验证头并向浏览器客户端发送质询响应401

另一方面,Cookie方法依赖于web服务器。在web服务器分配它之前,用户/浏览器将无法使用它


我需要实现一个场景,在该场景中,我需要跟踪每个用户在HTTP代理上的交互,并根据其配置文件为每个用户提供特定的处理,例如,我可以为给定用户阻止或删除网页中的图像,但允许其他用户使用这些图像。如何区分由一个用户生成的HTTP通信量与另一个用户生成的HTTP通信量

我认为使用cookies是个好主意,因为浏览器会保留cookies,并在每次请求时将其发送回代理

您基本上需要添加一个过滤器,并根据需要检查/插入cookies:

    return new HttpFiltersSourceAdapter() {
        @Override
        public HttpFilters filterRequest(HttpRequest originalRequest) {
            return new HttpFiltersAdapter(originalRequest) {

                @Override
                public HttpResponse requestPre(HttpObject httpObject) {
                    if (httpObject instanceof HttpRequest) {
                        // check the cookie here
                    }
                    return super.requestPre(httpObject);
                }

                @Override
                public HttpObject responsePre(HttpObject httpObject) {
                    if (httpObject instanceof HttpResponse) {
                        HttpResponse response = (HttpResponse) httpObject;
                        response.headers().set(HttpHeaders.Names.SET_COOKIE, ServerCookieEncoder.encode("Content", "Some"));
                        return response;
                    } 

                    return httpObject;
                }
            };
        }
    };