Mchrobok
Occasional Observer

BeanShell - URL aufrufen und den Rückgabewert speichern

Hallo zusammen, ich würde gerne in Skript nach einer Vollgenerierung eine URL aufrufen und die von dort zurückkommenden JSON Daten in eine Datei in das Generierungsverzeichnis schreiben. Leider kenne ich mich noch nicht gut mit BeanShell Skripten aus, kann mir jemand einen Tipp geben wie man das bewerkstelligt?

0 Kudos
2 Replies
mikula
Crownpeak employee

Da Beanshell Grundsätzlich java ist sollte sowas funktionieren:

private static String readUrl(String urlString) throws Exception {
  
BufferedReader reader = null;
  
try {
  URL url
= new URL(urlString);
  reader
= new BufferedReader(new InputStreamReader(url.openStream()));
  
StringBuffer buffer = new StringBuffer();
  
int read;
  
char[] chars = new char[1024];
  
while ((read = reader.read(chars)) != -1)
  buffer
.append(chars, 0, read);

  
return buffer.toString();
  
} finally {
  
if (reader != null)
  reader
.close();
  
}
}

try {

  File file = new File("test1.txt");

  FileWriter fileWriter = new FileWriter(file);

  fileWriter.write(readUrl("www.example.com"));

  fileWriter.flush();

  fileWriter.close();

} catch (IOException e) {

  e.printStackTrace();

}

Viele Grüße

Martin

0 Kudos
MichaelaReydt
Community Manager

Hallo Michael,

ist dieses Posting noch aktuell? Konntest du Martins Codebeispiel schon ausprobieren? Benötigst du noch weitere Hilfe oder hat die Martins Antwort bereits weiter geholfen? In diesem Fall wäre es super, wenn du seine "richtige Frage" entsprechend markierst.

Solltest du zwischenzeitlich eine eigene Lösung gefunden haben, würden wir uns freuen, wenn du diese hier bereitstellst.

Viele Grüße

Michaela

0 Kudos