Ошибка при подключении к APNS (https://api.development.push.apple.com/)
Я пытаюсь подключиться к APNS ( https://api.development.push.apple.com/), используя HttpsUrlConnection (код Java). Я скачал сертификат с https://api.development.push.apple.com/ и добавил его в хранилище ключей Java.
КОД:
public class HttpsUrlConnectionClient {
public static void main(String[] args) {
{
try {
URL obj = new URL("https://api.development.push.apple.com/3/device/<device-token>");
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("apns-topic", "<apns-topic-name>");
con.setRequestProperty("authorization", "bearer <apns-auth-key>");
con.setRequestProperty("content-type", "application/json");
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes("{ \"aps\" : { \"alert\" : \"Hello\" } }");
wr.flush();
wr.close();
int responseCode = con.getResponseCode();
System.out.println(responseCode);
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
} catch (Exception e) {
}
}
}
}
Я выполнил шаги, упомянутые на https://github.com/escline/InstallCert чтобы получить сертификат сервера и сохранить его локально.
Я всегда получаю responseCode как -1 (неверный HTTP-ответ).
Пожалуйста, помогите мне, так как я не понимаю, связано ли это с сертификацией или чем-то еще.