1. 程式人生 > >servlet實現簡單的反向代理

servlet實現簡單的反向代理

專案基於Spring
須要的依賴為:

<dependency>
    <groupId>org.mitre.dsmiley.httpproxy</groupId>
    <artifactId>smiley-http-proxy-servlet</artifactId>
    <version>1.7</version>
</dependency>

只需要新增一個java檔案即可,原理有待繼續研究

package *.*.*.*;

import org.mitre.dsmiley.httpproxy.ProxyServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * Created by czz on 2018/11/13.
 */
@Configuration
public class SolrProxyServletConfiguration {
    @Bean
    public ServletRegistrationBean servletRegistrationBean(){
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new ProxyServlet(), "/s/*");
        servletRegistrationBean.addInitParameter("targetUri", "http://www.baidu.com/s");
        servletRegistrationBean.addInitParameter(ProxyServlet.P_LOG, "false");
        return servletRegistrationBean;
    }
}

參考文章:Spring boot使用ProxyFilter進行服務代理