最近项目网络请求需要设置代理,记录一下。

http和https都可以。

OkHttpClient.Builder builder = new OkHttpClient.Builder();

//代理服务器的IP和端口号

builder.proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("127.0.0.1", 8080)));

//代理的鉴权账号密码

final String userName = "";

final String password = "";

builder.proxyAuthenticator(new Authenticator() {

@Override

public Request authenticate(Route route, Response response) throws IOException {

//设置代理服务器账号密码

String credential = Credentials.basic(userName, password);

return response.request().newBuilder()

.header("Proxy-Authorization", credential)

.build();

}

});

okHttpClient = builder

//设置读取超时时间

.readTimeout(REQUEST_TIMEOUT_MS, TimeUnit.SECONDS)

//设置写的超时时间

.writeTimeout(REQUEST_TIMEOUT_MS, TimeUnit.SECONDS)

.connectTimeout(REQUEST_TIMEOUT_MS, TimeUnit.SECONDS).build();

ijkplayer设置代理和账号密码

mPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT,"http_proxy", "http://"+host + ":" + port);

mPlayer.setOption(IjkMediaPlayer.OPT_CATEGORY_FORMAT,"headers", "Proxy-Authorization:"+credential);

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐