Ordre limite Java GDAX (publication HTTP)


Les requêtes 'GET'fonctionnent correctement et je ne suis pas sûr de transmettre correctement les paramètres json car je continue à recevoir une mauvaise requête.

Private static JsonObject LimitOrder (symbole de chaîne, côté booléen, quantité de chaîne, prix de chaîne)

BigDecimal dPrice = nouveau BigDecimal (prix);

BigDecimal dQuantity = nouveau BigDecimal (quantité);

String sSide = side? "Acheter" : "vendre";

Ordre limite Java GDAX (publication HTTP)

toString () +" " "post_only " : true} ";

essayer

Horodatage de la chaîne = Instant.now (). GetEpochSecond () + "";

String accessSign = getAccess (horodatage, "POST", "/ orders");

String apiKey = properties.getProperty ("clé");

String passphrase = properties.getProperty ("passphrase");

getProperty ("host") + "/ orders");

Connexion HttpURLConnection = (HttpURLConnection) url.openConnection ();

connection.setDoOutput (true); // Déclenche le POST.

connection.setRequestProperty ("Content-Type", "application / json; charset = UTF-8");

connection.setRequestProperty ("CB-ACCESS-KEY", apiKey);

connection.setRequestProperty ("CB-ACCESS-SIGN", accessSign);

connection.setRequestProperty ("CB-ACCESS-PASSPHRASE", phrase secrète);

connection.setRequestProperty ("CB-ACCESS-TIMESTAMP", horodatage);

connection.setRequestProperty ("accepter", "application / json");

connection.setConnectTimeout (5000);

connection.setReadTimeout (5000);

// System.out.println ("WRiting :" + param);

output.write (param.getBytes ("UTF-8"));

État de la chaîne = connection.getResponseMessage ();

System.out.println ("STATUS :" + status);

BufferedReader in = new BufferedReader (nouveau InputStreamReader (connection.getInputStream ()));

String inputLine;

Contenu StringBuffer = nouveau StringBuffer ();

content.append (inputLine);

System.out.println (contenu);

System.out.println ("Réponse vide");

joindre();

connection.disconnect ();

e.printStackTrace ();

return null;

et la méthode de signe d'accès ci-dessous:

String secret = properties.getProperty ("secret");

String prehash = horodatage + méthode + chemin;

getInstance ("HmacSHA256");

octet secretDecoded = Base64.getDecoder (). decode (secret);

"HmacSHA256");

init (clé_secret);

doFinal (prehash.getBytes ()));

}