Ressourcen abrufen und über das Internet mit anderen Hosts kommunizieren.
Mit diesem Dienst können Scripts mit anderen Anwendungen kommunizieren oder auf andere Ressourcen im Web zugreifen, indem sie URLs abrufen. Ein Script kann mithilfe des URL-Abrufdienstes HTTP- und HTTPS-Anfragen senden und Antworten empfangen. Der URL-Abrufdienst nutzt die Netzwerkinfrastruktur von Google aus Effizienz- und Skalierungsgründen.
Anfragen, die über diesen Dienst gesendet werden, stammen aus einem festgelegten Pool von IP-Bereichen. Wenn Sie diese Anfragen auf die Zulassungsliste setzen oder genehmigen möchten, können Sie die vollständige Liste der IP-Adressen aufrufen.
Für diesen Dienst ist der Umfang https://www.googleapis.com/auth/script.external_request
erforderlich. In den meisten Fällen werden die für ein Script erforderlichen Bereiche in Apps Script automatisch erkannt und eingeschlossen. Wenn Sie die Bereiche jedoch explizit festlegen, müssen Sie diesen Bereich manuell hinzufügen, um Url
zu verwenden.
Weitere Informationen
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
fetch(url) | HTTPResponse | Stellt eine Anfrage zum Abrufen einer URL. |
fetch(url, params) | HTTPResponse | Stellt eine Anfrage zum Abrufen einer URL mit optionalen erweiterten Parametern. |
fetch | HTTPResponse[] | Er führt mithilfe optionaler erweiterter Parameter mehrere Anfragen aus, um mehrere URLs abzurufen. |
get | Object | Gibt die Anfrage zurück, die gesendet wird, wenn der Vorgang aufgerufen wurde. |
get | Object | Gibt die Anfrage zurück, die gesendet wird, wenn der Vorgang aufgerufen wird. |
Detaillierte Dokumentation
fetch(url)
Stellt eine Anfrage zum Abrufen einer URL.
Das funktioniert sowohl über HTTP als auch über HTTPS.
// The code below logs the HTML code of the Google home page. const response = UrlFetchApp.fetch('http://www.google.com/'); Logger.log(response.getContentText());
Parameter
Name | Typ | Beschreibung |
---|---|---|
url | String | Die abzurufende URL. Die URL kann bis zu 2.082 Zeichen lang sein. |
Rückflug
HTTPResponse
: Die HTTP-Antwortdaten.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/script.external_request
fetch(url, params)
Stellt eine Anfrage zum Abrufen einer URL mit optionalen erweiterten Parametern.
Das funktioniert sowohl über HTTP als auch über HTTPS.
// Make a GET request and log the returned content. const response = UrlFetchApp.fetch('http://www.google.com/'); Logger.log(response.getContentText());
// Make a POST request with form data. const resumeBlob = Utilities.newBlob('Hire me!', 'text/plain', 'resume.txt'); const formData = { name: 'Bob Smith', email: 'bob@example.com', resume: resumeBlob, }; // Because payload is a JavaScript object, it is interpreted as // as form data. (No need to specify contentType; it automatically // defaults to either 'application/x-www-form-urlencoded' // or 'multipart/form-data') const options = { method: 'post', payload: formData, }; UrlFetchApp.fetch('https://httpbin.org/post', options);
// Make a POST request with a JSON payload. const data = { name: 'Bob Smith', age: 35, pets: ['fido', 'fluffy'], }; const options = { method: 'post', contentType: 'application/json', // Convert the JavaScript object to a JSON string. payload: JSON.stringify(data), }; UrlFetchApp.fetch('https://httpbin.org/post', options);
Parameter
Name | Typ | Beschreibung |
---|---|---|
url | String | Die abzurufende URL. Die URL kann bis zu 2.082 Zeichen lang sein. |
params | Object | Das optionale JavaScript-Objekt, das erweiterte Parameter wie unten definiert angibt. |
Erweiterte Parameter
Name | Typ | Beschreibung |
---|---|---|
content | String | den Inhaltstyp (standardmäßig „application/x-www-form-urlencoded“). Ein weiteres Beispiel für einen Inhaltstyp ist „application/xml; charset=utf-8“. |
headers | Object | eine JavaScript-Schlüssel/Wert-Zuordnung von HTTP-Headern für die Anfrage |
method | String | die HTTP-Methode für die Anfrage: get , delete ,
patch , post oder put . Der Standardwert ist get . |
payload | String | die Nutzlast (d. h. der POST-Text) für die Anfrage. Bestimmte HTTP-Methoden (z. B. GET) akzeptieren keine Nutzlast. Es kann sich um einen String, ein Byte-Array, einen Blob oder ein JavaScript-Objekt handeln. Ein JavaScript-Objekt wird als Zuordnung von Formularfeldnamen zu Werten interpretiert. Die Werte können Strings oder Blobs sein. |
use | Boolean | Verworfen. Dadurch wird Fetch angewiesen, die angegebene URL im Intranet aufzulösen, das über das (veraltete) SDC mit Ihrer Domain verknüpft ist. |
validate | Boolean | Wenn false , werden bei der Abfrage alle ungültigen Zertifikate für HTTPS-Anfragen ignoriert. Der Standardwert ist true . |
follow | Boolean | Wenn false beim Abruf nicht automatisch HTTP-Weiterleitungen folgt, wird die ursprüngliche HTTP-Antwort zurückgegeben. Der Standardwert ist true . |
mute | Boolean | Wenn true , wird bei einem Fehler im Antwortcode keine Ausnahme ausgelöst, sondern stattdessen die HTTPResponse zurückgegeben. Der Standardwert ist false . |
escaping | Boolean | Wenn false reservierte Zeichen in der URL nicht maskiert sind. Der Standardwert ist true . |
Rückflug
HTTPResponse
: Die HTTP-Antwortdaten.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/script.external_request
fetch All(requests)
Er führt mithilfe optionaler erweiterter Parameter mehrere Anfragen aus, um mehrere URLs abzurufen.
Das funktioniert sowohl über HTTP als auch über HTTPS.
// Make both a POST request with form data, and a GET request. const resumeBlob = Utilities.newBlob('Hire me!', 'text/plain', 'resume.txt'); const formData = { name: 'Bob Smith', email: 'bob@example.com', resume: resumeBlob, }; // Because payload is a JavaScript object, it is interpreted as // as form data. (No need to specify contentType; it defaults to either // 'application/x-www-form-urlencoded' or 'multipart/form-data') const request1 = { url: 'https://httpbin.org/post', method: 'post', payload: formData, }; // A request may also just be a URL. const request2 = 'https://httpbin.org/get?key=value'; UrlFetchApp.fetchAll([request1, request2]);
Parameter
Name | Typ | Beschreibung |
---|---|---|
requests | Object[] | Ein Array von URLs oder JavaScript-Objekten, die Anfragen wie unten definiert angeben. |
Erweiterte Parameter
Name | Typ | Beschreibung |
---|---|---|
url | String | die abzurufende URL. Die URL kann bis zu 2.082 Zeichen lang sein. |
content | String | den Inhaltstyp (standardmäßig „application/x-www-form-urlencoded“). Ein weiteres Beispiel für einen Inhaltstyp ist „application/xml; charset=utf-8“. |
headers | Object | eine JavaScript-Schlüssel/Wert-Zuordnung von HTTP-Headern für die Anfrage |
method | String | die HTTP-Methode für die Anfrage: get , delete ,
patch , post oder put . Der Standardwert ist get . |
payload | String | die Nutzlast (d. h. der POST-Text) für die Anfrage. Bestimmte HTTP-Methoden (z. B. GET) akzeptieren keine Nutzlast. Es kann sich um einen String, ein Byte-Array, einen Blob oder ein JavaScript-Objekt handeln. Ein JavaScript-Objekt wird als Zuordnung von Formularfeldnamen zu Werten interpretiert. Die Werte können Strings oder Blobs sein. |
use | Boolean | Verworfen. Dadurch wird Fetch angewiesen, die angegebene URL im Intranet aufzulösen, das über das (veraltete) SDC mit Ihrer Domain verknüpft ist. |
validate | Boolean | Wenn false , werden bei der Abfrage alle ungültigen Zertifikate für HTTPS-Anfragen ignoriert. Der Standardwert ist true . |
follow | Boolean | Wenn false beim Abruf nicht automatisch HTTP-Weiterleitungen folgt, wird die ursprüngliche HTTP-Antwort zurückgegeben. Der Standardwert ist true . |
mute | Boolean | Wenn true , wird beim Abrufen keine Ausnahme ausgelöst, wenn der Antwortcode einen Fehler anzeigt, und stattdessen wird HTTPResponse zurückgegeben. Der Standardwert ist false . |
escaping | Boolean | Wenn false , werden reservierte Zeichen in der URL nicht maskiert. Der Standardwert ist true . |
Rückflug
HTTPResponse[]
: Ein Array von HTTP-Antwortdaten aus jeder Eingabeanfrage.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/script.external_request
get Request(url)
Gibt die Anfrage zurück, die gesendet wird, wenn der Vorgang aufgerufen wurde.
Bei dieser Methode wird die Anfrage nicht tatsächlich gesendet.
// The code below logs the value for every key of the returned map. const response = UrlFetchApp.getRequest('http://www.google.com/'); for (const i in response) { Logger.log(`${i}: ${response[i]}`); }
Parameter
Name | Typ | Beschreibung |
---|---|---|
url | String | Die URL, die gesucht werden soll. Die URL kann bis zu 2.082 Zeichen lang sein. |
Rückflug
Object
: Eine Zuordnung von Feldnamen zu Werten. Die Karte hat mindestens die folgenden Schlüssel: url
, method
, content
, payload
und headers
.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/script.external_request
get Request(url, params)
Gibt die Anfrage zurück, die gesendet wird, wenn der Vorgang aufgerufen wird.
Bei dieser Methode wird die Anfrage nicht tatsächlich gesendet.
Parameter
Name | Typ | Beschreibung |
---|---|---|
url | String | Die URL, die gesucht werden soll. Die URL kann bis zu 2.082 Zeichen lang sein. |
params | Object | Ein optionales JavaScript-Objekt, das erweiterte Parameter wie unten definiert angibt. |
Erweiterte Parameter
Name | Typ | Beschreibung |
---|---|---|
content | String | den Inhaltstyp (standardmäßig „application/x-www-form-urlencoded“). Ein weiteres Beispiel für einen Inhaltstyp ist „application/xml; charset=utf-8“. |
headers | Object | eine JavaScript-Schlüssel/Wert-Zuordnung von HTTP-Headern für die Anfrage |
method | String | die HTTP-Methode für die Anfrage: get , delete ,
patch , post oder put . Der Standardwert ist get . |
payload | String | die Nutzlast (d. h. der POST-Text) für die Anfrage. Bestimmte HTTP-Methoden (z. B. GET) akzeptieren keine Nutzlast. Es kann sich um einen String, ein Byte-Array, einen Blob oder ein JavaScript-Objekt handeln. Ein JavaScript-Objekt wird als Zuordnung von Formularfeldnamen zu Werten interpretiert. Die Werte können Strings oder Blobs sein. |
use | Boolean | Verworfen. Dadurch wird Fetch angewiesen, die angegebene URL im Intranet aufzulösen, das über das (veraltete) SDC mit Ihrer Domain verknüpft ist. |
validate | Boolean | Wenn false , werden bei der Abfrage alle ungültigen Zertifikate für HTTPS-Anfragen ignoriert. Der Standardwert ist true . |
follow | Boolean | Wenn false beim Abruf nicht automatisch HTTP-Weiterleitungen folgt, wird die ursprüngliche HTTP-Antwort zurückgegeben. Der Standardwert ist true . |
mute | Boolean | Wenn true , wird bei einem Fehler im Antwortcode keine Ausnahme ausgelöst, sondern stattdessen die HTTPResponse zurückgegeben. Der Standardwert ist false . |
escaping | Boolean | Wenn reservierte Zeichen false in der URL nicht maskiert werden. Der Standardwert ist true . |
Rückflug
Object
: Eine Zuordnung von Feldnamen zu Werten. Die Karte hat mindestens die folgenden Schlüssel: url
, method
, content
, payload
und headers
.
Autorisierung
Scripts, die diese Methode verwenden, erfordern eine Autorisierung für einen oder mehrere der folgenden Bereiche:
-
https://www.googleapis.com/auth/script.external_request