Случай использования:
Я использую java-программу для очистки по CPCode и по URL-адресу. Приведенный ниже фрагмент кода используется для подключения и очистки к Akamai.
credential = ClientCredential.builder().accessToken(Constants.ACCESS_TOKEN).
clientToken(Constants.CLIENT_TOKEN).clientSecret(Constants.CLIENT_SECRET).host(Constants.HOST).build();
transBuilder = new ApacheHttpTransport.Builder();
httpTransport = transBuilder.doNotValidateCertificate().build();
requestFactory = httpTransport.createRequestFactory();
uri = URI.create(“https://control.akamai.com/ccu/v3/delete/cpcode/production”);
requestBody = "{\"objects\": ["+cpCodes+"]}";
request = requestFactory.buildPostRequest(new GenericUrl(uri),ByteArrayContent.fromString("application/json", requestBody));
requestSigner = new GoogleHttpClientEdgeGridRequestSigner(credential);
requestSigner.sign(request);
response = request.execute();
PS: ACCESS_TOKEN, CLIENT_TOKEN, CLIENT_SECRET и HOST определены в отдельных Constants.java
String HOST = «akab-tmpyt2prlt4zzld2-zvmyfb6ishptaqxc.purge.akamaiapis.net»;
Проблема: этот код отлично работает на моем компьютере с Windows (мой персональный компьютер, т. е. домашний Wi-Fi), но когда я запускаю тот же код на компьютере с Linux (клиент с защищенной сетью), я получаю следующую ошибку: Подключиться к akab-tmpyt2prlt4zzld2-zvmyfb6ishptaqxc.purge.akamaiapis.net:443 time out
Мой анализ на данный момент:
Я вижу, что это говорит о проблеме тайм-аута из Linux (клиентская защищенная сеть), а из Windows (общедоступная сеть) он никогда не жалуется на это. Я запускаю команду nslookup в Linux для этого HOST, и она работает нормально, то есть может разрешать DNS. Но когда я пробую команду wget или curl в Linux, она говорит о проблеме с тайм-аутом. Я вижу, что моя машина с Linux использует прокси для подключения к Интернету.
Раньше я думал, что моя машина с Linux не может подключиться (akab-tmpyt2prlt4zzld2-zvmyfb6ishptaqxc.purge.akamaiapis.net), но потом я заметил, что ни одна из моих Windows не может подключиться ( akab-tmpyt2prlt4zzld2-zvmyfb6ishptaqxc.purge.akamaiapis.net). В обоих случаях я получал 400 Bad request. Итак, я пришел к выводу, что эти четыре ACCESS_TOKEN, CLIENT_TOKEN, CLIENT_SECRET и HOST работают только вместе.
Теперь я пытаюсь найти, где может быть критическая точка в Linux. Есть ли что-то, что я могу попросить команду прокси добавить/разрешить какой-либо URL. Пожалуйста, предложите.