1
13693261870
2022-09-16 fee60c3e25fac0982f3b8cb8feea7225c4ed22f8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.terra.proxy.servlet;
 
import org.mitre.dsmiley.httpproxy.ProxyServlet;
 
import javax.servlet.http.HttpServletRequest;
 
public class ArcinfoServlet extends ProxyServlet {
 
    protected String rewriteUrlFromRequest(HttpServletRequest servletRequest) {
 
        StringBuilder uri = new StringBuilder(500);
        uri.append(getTargetUri(servletRequest));
        if (servletRequest.getPathInfo() != null) {
            uri.append(encodeUriQuery(servletRequest.getPathInfo()));
        }
        String queryString = servletRequest.getQueryString();
        String fragment = null;
        if (queryString != null) {
            int fragIdx = queryString.indexOf('#');
            if (fragIdx >= 0) {
                fragment = queryString.substring(fragIdx + 1);
                queryString = queryString.substring(0, fragIdx);
            }
        }
        queryString = rewriteQueryStringFromRequest(servletRequest, queryString);
        if ((queryString != null) && (queryString.length() > 0)) {
            uri.append('?');
            uri.append(encodeUriQuery(queryString));
        }
        if ((this.doSendUrlFragment) && (fragment != null)) {
            uri.append('#');
            uri.append(encodeUriQuery(fragment));
        }
        return uri.toString();
    }
 
 
}