日安,
我已经下载了infobip应用程序接口并将其导入到我的工作区。
我想用这个接口来调用infobip发送短信。
但是,我有一个要求,那就是,在到达infobip端点URL之前,我需要首先通过服务器代理。
因此,原始代码如下:
public SMSResponse execute(SMSTextualRequest bodyObject) {
RestAdapter restAdapter = new RestAdapter.Builder( ).
.setEndpoint( configuration.getBaseUrl( ) )
.setRequestInterceptor( getRequestInterceptor( ) )
.setConverter(
new GsonConverter( new GsonBuilder( ).setDateFormat(
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" ).create( ) ) )
.build( );
SendSingleTextualSmsService service = restAdapter
.create( SendSingleTextualSmsService.class );
return service.execute( bodyObject );
}我正在考虑使用setClient()方法来设置代理值。因此,我创建了一个客户端对象:
Client client = null;并计划如下所示:
RestAdapter restAdapter = new RestAdapter.Builder( ).setClient( client )
\\ some code...但是,我在Client对象中找不到任何与ip地址和端口号属性相关的内容可供我设置。
我用对了吗?
敬请指教。
发布于 2016-09-27 18:49:23
您可以这样配置它:
OkHttpClient client = new OkHttpClient();
java.net.Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));
client.setProxy(proxy);
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(configuration.getBaseUrl())
.setRequestInterceptor(getRequestInterceptor())
.setConverter(new GsonConverter(new GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ")
.create()))
.setClient(new OkClient(client))
.build();希望这能有所帮助!
https://stackoverflow.com/questions/39699773
复制相似问题