Portál AbcLinuxu, 8. května 2025 07:46
K zápisu dat přes http potřebuji X-CSRF-token. Nejdříve se tedy připojím metodou GET a získám jej. Když se chci přepnout na metodu POST, dostanu
Exception in thread "main" java.lang.IllegalStateException: connect in progress
at sun.net.www.protocol.http.HttpURLConnection.setRequestMethod(Unknown Source)
at Data.getData(getNaivePickerData.java:102)
at Data.run(getNaivePickerData.java:32)
at getNaivePickerData.main(getNaivePickerData.java:8)
Hledal jsem na netu docela dlouho, ale nic ze zmiňovaných řešení (např. před přepnutím na POST použít hpCon.disconnect()) nepomohlo.
Úryvek z kódu:
.....
URL hp = new URL(urlPostBatch);
HttpURLConnection hpCon = (HttpURLConnection)hp.openConnection();
hpCon.setRequestMethod("GET");
hpCon.setRequestProperty("x-csrf-token", "fetch");
this.XCSRFtoken = hpCon.getHeaderField("x-csrf-token");
hpCon.setRequestMethod("POST"); //<--Tady mi to hodí chybovou hlášku
hpCon.setDoOutput(true);
hpCon.setRequestProperty("X-CSRF-token", this.XCSRFtoken);
.....
Jakékoliv rady jsou vítány ...
Díky
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.