GDAX Java Bad Request
GDAX Java Bad Request
Trying to request private data on GDAX but keep getting bad request. Cannot figure out what I am doing wrong. Please help.
private static JsonObject getAuthenticatedData() { try { String accessSign = getAccess(); System.setProperty("http.agent", "Java Client"); URL url = new URL("http://ift.tt/2jaFBMq"); HttpURLConnection con = (HttpURLConnection) url.openConnection(); con.setRequestMethod("GET"); con.setRequestProperty("CB-ACCESS-KEY", "accesskey"); con.setRequestProperty("CB-ACCESS-SIGN", accessSign); con.setRequestProperty("CB-ACCESS-TIMESTAMP", ""+System.currentTimeMillis() / 1000L); con.setRequestProperty("CB-ACCESS-PASSPHRASE", "passphrase"); con.setRequestProperty("Content-Type", "application/json"); con.setConnectTimeout(5000); con.setReadTimeout(5000); String status = con.getResponseMessage(); System.out.println(status); BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())); String inputLine; StringBuffer content = new StringBuffer(); while ((inputLine = in.readLine()) != null) { content.append(inputLine); } System.out.println(content); in.close(); con.disconnect(); }catch(Exception e) { e.printStackTrace(); } return null; }
And this:
public static String getAccess() { //Set the Secret String secret = "secret=="; //Build the PreHash String prehash = Instant.now().toEpochMilli()+"GET"+"/accounts"; String hash = null; try { Mac sha256_HMAC = Mac.getInstance("HmacSHA256"); SecretKeySpec secret_key = new SecretKeySpec(secret.getBytes(), "HmacSHA256"); sha256_HMAC.init(secret_key); hash = Base64.encodeBase64String(sha256_HMAC.doFinal(prehash.getBytes("UTF-8"))); hash = hash.replace("\n", ""); System.out.println(hash); } catch (Exception e){ e.printStackTrace(); } return hash; }http://ift.tt/2DXOajk
Comments
Post a Comment