J'essaie d'utiliser une API REST qui ne prend en charge que le transfert de données JSON via les attributs form-data ou www-form-urlencoded. Donc, ma question est, comment puis-je utiliser un HttpUrlConnection pour attacher plusieurs éléments de données de formulaire? Lorsque j'utilise l'API via le navigateur la demande ressemble à ceci dans Chrome:Java - Comment envoyer des données de formulaire ou des données urlencodées www sur une HttpUrlConnection
Formulaire de données
ajoute:
mises à jour: [{ "attributs": { "OBJECTID": 2241 , "OTHER_FIELD": "500"}}]
supprime:
gdbVersion:
rouleau backOnFailure:
f: pjson
Mais je ne peux pas comprendre comment reproduire ce en Java.
C'est ce que je l'ai essayé jusqu'à présent:
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setUseCaches(false);
urlConnection.setDoOutput(true);
urlConnection.setRequestMethod("POST");
urlConnection.addRequestProperty("f", "json");
urlConnection.addRequestProperty("adds", null);
urlConnection.addRequestProperty("updates", "[{\"attributes\":{\"OBJECTID\":2241,\"OTHER_FIELD\":\"500\"}}]");
urlConnection.addRequestProperty("deletes", null);
urlConnection.addRequestProperty("rollbackOnFailure", "true");
urlConnection.addRequestProperty("gdbVersion", null);
Mais il ne se fixe pas les données comme il se doit ...
Pour les personnes intéressées, je suis en train de se connecter à un ArcGIS API fonction de service afin que je puisse ajouter, mettre à jour ou supprimer des fonctionnalités, mais ici, je me sers ApplyEdits