首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将代理值设置为InfoBip接口

将代理值设置为InfoBip接口
EN

Stack Overflow用户
提问于 2016-09-26 17:57:17
回答 1查看 223关注 0票数 0

日安,

我已经下载了infobip应用程序接口并将其导入到我的工作区。

我想用这个接口来调用infobip发送短信。

但是,我有一个要求,那就是,在到达infobip端点URL之前,我需要首先通过服务器代理。

因此,原始代码如下:

代码语言:javascript
复制
 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()方法来设置代理值。因此,我创建了一个客户端对象:

代码语言:javascript
复制
Client client = null;

并计划如下所示:

代码语言:javascript
复制
RestAdapter restAdapter = new RestAdapter.Builder( ).setClient( client )
\\ some code...

但是,我在Client对象中找不到任何与ip地址和端口号属性相关的内容可供我设置。

我用对了吗?

敬请指教。

EN

回答 1

Stack Overflow用户

发布于 2016-09-27 18:49:23

您可以这样配置它:

代码语言:javascript
复制
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();

希望这能有所帮助!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39699773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档