开发者

401 error with urbanairship using httpsurlconnection class

开发者 https://www.devze.com 2023-02-11 09:09 出处:网络
I am getting a 401 error when i try to hit the push URL. I am using HTTP BASIC authentication with \"Application Key\" as username and \"Application Master Secret\"as password. I am using JAVA HttpsUr

I am getting a 401 error when i try to hit the push URL. I am using HTTP BASIC authentication with "Application Key" as username and "Application Master Secret"as password. I am using JAVA HttpsUrlConnection class. I dont know whats wrong with my code.

 `            URL url = new URL("https://go.urbanairship.com/api/push");
          HttpsURLConnection connection = (HttpsURLConnection)url.openConnection();
          connection.setRequestMethod("POST");
          connection.setDoOutput(true);
          connection.setDoInput(true);
          connection.setUseCaches(false);
          connection.setRequestProperty("Content-Type","application/json");
          connection.setRequestProperty("Content-Length", Integer.toString(data.length()));

          String authString = "xxxxxxxxxxxxxxxxxx:yyyyyyyyyyyyyyyyy";
          authString = Base64Coder.encodeString(authString);
          connection.setRequestProperty("Authorization","Basic "+ authString);
          OutputStreamWriter wr = new OutputStreamWriter(connection.getOutputStream());
          wr.write(data);
          wr.flush();

          int responseCode = connection.getResponseCode();

          //Get the response
          String responseLine = new BufferedReader(new InputStreamReader(connection.getInputStre开发者_JAVA技巧am())).readLine();`


Your authString should be composed of <application-key>:<application-master-secret>. Also your authstring may not be getting encoded properly. Try using Apache Commons Codec or ostermiller library to encode the authstring

0

精彩评论

暂无评论...
验证码 换一张
取 消