package com.nova.sankuai.domain.api.aliyunIP; import com.alibaba.cloudapi.sdk.client.ApacheHttpClient; import com.alibaba.cloudapi.sdk.enums.Scheme; import com.alibaba.cloudapi.sdk.enums.HttpMethod; import com.alibaba.cloudapi.sdk.model.ApiRequest; import com.alibaba.cloudapi.sdk.model.ApiResponse; import com.alibaba.cloudapi.sdk.model.ApiCallback; import com.alibaba.cloudapi.sdk.model.HttpClientBuilderParams; import com.alibaba.cloudapi.sdk.enums.ParamPosition; import com.fasterxml.jackson.databind.ObjectMapper; public class HttpApiClientIP extends ApacheHttpClient{ // public final static String HOST = "ips.market.alicloudapi.com"; public final static String HOST = "zjip.market.alicloudapi.com"; static com.nova.sankuai.domain.api.aliyunIP.HttpApiClientIP instance = new com.nova.sankuai.domain.api.aliyunIP.HttpApiClientIP(); public static com.nova.sankuai.domain.api.aliyunIP.HttpApiClientIP getInstance(){return instance;} public static final ObjectMapper mapper = new ObjectMapper(); public void init(HttpClientBuilderParams httpClientBuilderParams){ httpClientBuilderParams.setScheme(Scheme.HTTP); httpClientBuilderParams.setHost(HOST); super.init(httpClientBuilderParams); } public void IPLocaltion(String ip , ApiCallback callback) { String path = "/iplocaltion"; ApiRequest request = new ApiRequest(HttpMethod.GET , path); request.addParam("ip" , ip , ParamPosition.QUERY , true); sendAsyncRequest(request , callback); } public ApiResponse IPLocaltionSyncMode(String ip) { try { String path = "/iplocaltion"; ApiRequest request = new ApiRequest(HttpMethod.GET , path); request.addParam("ip" , ip , ParamPosition.QUERY , true); return sendSyncRequest(request); } catch (Exception e){ return null; } } }