Java 城市航空推送API
我正在尝试使用java程序构建一个简单的推送通知,将消息广播到所有Android设备,但我总是收到Connectionexception,我不知道为什么Java 城市航空推送API,java,urbanairship.com,Java,Urbanairship.com,我正在尝试使用java程序构建一个简单的推送通知,将消息广播到所有Android设备,但我总是收到Connectionexception,我不知道为什么 URL url = new URL("https://go.urbanairship.com/api/push/broadcast/"); // Transmit the request document HttpURLConnection connection = (HttpURLConnection) url.ope
URL url = new URL("https://go.urbanairship.com/api/push/broadcast/");
// Transmit the request document
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
System.out.println("connect 1");
connection.setDoOutput(true);
String auth = "*****************" + ":" + "******************";
//connection.setRequestProperty("Authorization","Basic " + Base64.encode(auth.getBytes()));
connection.setRequestProperty("Authorization", "Basic " + auth);
System.out.println("connect 2");
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setConnectTimeout(12000);
connection.setRequestProperty("Content-Type","application/json");
connection.setRequestProperty("Content-Length", "" + Integer.toString(bytes.length));
connection.connect();
System.out.println("connect 3");
//Send request
DataOutputStream wr = new DataOutputStream (connection.getOutputStream ());
wr.write(bytes);
wr.flush ();
wr.close ();
System.out.println("connect 5");
//Get Response
String responseHeader = connection.getHeaderField(0);
System.out.println("response header " + responseHeader);
输出:
connect 1
connect 2
Exception in thread "main" java.net.SocketTimeoutException: connect timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:559)
at sun.net.NetworkClient.doConnect(NetworkClient.java:158)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:394)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:529)
at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:272)
at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:329)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:172)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:911)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:158)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:133)
at TestProject.main(TestProject.java:34)
connect1
连接2
线程“main”java.net.SocketTimeoutException中出现异常:连接超时
位于java.net.PlainSocketImpl.socketConnect(本机方法)
位于java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
位于java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
在java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
位于java.net.socksocketimpl.connect(socksocketimpl.java:366)
位于java.net.Socket.connect(Socket.java:529)
位于com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:559)
位于sun.net.NetworkClient.doConnect(NetworkClient.java:158)
位于sun.net.www.http.HttpClient.openServer(HttpClient.java:394)
位于sun.net.www.http.HttpClient.openServer(HttpClient.java:529)
在sun.net.www.protocol.https.HttpsClient.(HttpsClient.java:272)
位于sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:329)
位于sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:172)
位于sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:911)
位于sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:158)
位于sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:133)
位于TestProject.main(TestProject.java:34)
关闭此缺陷。尝试与城市飞艇团队合作,但他们那边似乎有一个bug。您是否尝试过使用curl发送推送示例?