Muszę skonfigurować proxy, aby wysłać JSON za pomocą POST, używając proxyHost i proxyPort.Ustawienia proxy OkHttp
public static final MediaType JSON = MediaType.parse("application/json; charset=utf-8");
Proxy proxyTest = new Proxy(Proxy.Type.HTTP,new InetSocketAddress("proxy", proxyPort));
OkHttpClient client = new OkHttpClient()
.proxy(proxyTest)
.build();
//OkHttpClient.Builder builder = new OkHttpClient.Builder();
//builder.proxy(proxySAP);
//client.setProxy(proxySAP)
//OkHttpClient client = builder.build();;
String post(String url, String json) throws IOException {
RequestBody body = RequestBody.create(JSON, json);
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
try (Response response = client.newCall(request).execute()) {
return response.body().string();
}
}
Kiedy próbuję użyć proxyTest że ja widziałem na niektórych odpowiedziach tutaj wskazuje, że błąd:
The method proxy() in the type OkHttpClient is not applicable for the arguments (Proxy)
IAM używając OKHTTP 3.3.1 (okhttp3)
My Pytanie brzmi, co powinienem zrobić? Zrobiłem kilka takich testów:
OkHttpClient.Builder builder = new OkHttpClient.Builder();
builder.proxy(proxyTest);
client.setProxy(proxyTest)
OkHttpClient client = builder.build();
Ale nic nie działa tak daleko.
Dziękujemy za poświęcony czas!
Byłaś wywołanie [OkHttpClient.proxy()] (http://square.github.io/okhttp/3.x/okhttp/okhttp3/OkHttpClient.html#proxy--) Ale chcesz zadzwonić [ OkHttpClient.Builder.proxy (Proxy)] (http://square.github.io/okhttp/3.x/okhttp/okhttp3/OkHttpClient.Builder.html#proxy-java.net.Proxy-). – nobar