Pobieranie zasobów i komunikowanie się z innymi hostami przez internet.
Ta usługa pozwala skryptom komunikować się z innymi aplikacjami lub uzyskiwać dostęp do innych zasobów w internecie, pobierając adresy URL. Skrypt może używać usługi pobierania adresów URL do wysyłania żądań HTTP i HTTPS żądań i otrzymywania odpowiedzi. Usługa pobierania adresów URL korzysta z infrastruktury sieciowej Google pod kątem wydajności i skalowania.
Żądania wysyłane za pomocą tej usługi pochodzą z określonej puli zakresów adresów IP. Możesz sprawdzić pełną listę adresów IP, jeśli: musisz dodać te prośby do listy dozwolonych lub je zatwierdzić.
Ta usługa wymaga https://www.googleapis.com/auth/script.external_request
zakresu. W większości przypadków Apps Script automatycznie wykrywa i uwzględnia zakresy, których potrzebuje skrypt,
Jeśli jednak ustawiasz zakresy
bezpośrednio, musisz ręcznie dodać ten zakres, aby używać UrlFetchApp
.
Zobacz też
Metody
Metoda | Zwracany typ | Krótki opis |
---|---|---|
fetch(url) | HTTPResponse | Wysyłam żądanie pobrania adresu URL. |
fetch(url, params) | HTTPResponse | Wysyłam żądanie pobrania adresu URL przy użyciu opcjonalnych parametrów zaawansowanych. |
fetchAll(requests) | HTTPResponse[] | Wysyła wiele żądań pobrania wielu adresów URL za pomocą opcjonalnych parametrów zaawansowanych. |
getRequest(url) | Object | Zwraca żądanie wysłane po wywołaniu operacji. |
getRequest(url, params) | Object | Zwraca żądanie wysłane w przypadku wywołania operacji. |
Szczegółowa dokumentacja
fetch(url)
Wysyłam żądanie pobrania adresu URL.
Działają one zarówno w przypadku protokołów HTTP, jak i HTTPS.
// The code below logs the HTML code of the Google home page. var response = UrlFetchApp.fetch("http://www.google.com/"); Logger.log(response.getContentText());
Parametry
Nazwa | Typ | Opis |
---|---|---|
url | String | Adres URL do pobrania. Adres URL może mieć maksymalnie 2082 znaki. |
Powrót
HTTPResponse
– dane odpowiedzi HTTP.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.external_request
fetch(url, params)
Wysyłam żądanie pobrania adresu URL przy użyciu opcjonalnych parametrów zaawansowanych.
Działają one zarówno w przypadku protokołów HTTP, jak i HTTPS.
// Make a GET request and log the returned content. var response = UrlFetchApp.fetch('http://www.google.com/'); Logger.log(response.getContentText());
// Make a POST request with form data. var resumeBlob = Utilities.newBlob('Hire me!', 'text/plain', 'resume.txt'); var 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') var options = { 'method' : 'post', 'payload' : formData }; UrlFetchApp.fetch('https://httpbin.org/post', options);
// Make a POST request with a JSON payload. var data = { 'name': 'Bob Smith', 'age': 35, 'pets': ['fido', 'fluffy'] }; var 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);
Parametry
Nazwa | Typ | Opis |
---|---|---|
url | String | Adres URL do pobrania. Adres URL może mieć maksymalnie 2082 znaki. |
params | Object | Opcjonalny obiekt JavaScript określający zaawansowane parametry zdefiniowane poniżej. |
Parametry zaawansowane
Nazwa | Typ | Opis |
---|---|---|
contentType | String | typ treści (wartość domyślna to 'application/x-www-form-urlencoded'). Innym przykładem typu treści jest „application/xml; charset=utf-8'. |
headers | Object | mapa klucz-wartość JavaScriptu nagłówków HTTP dla żądania |
method | String | metodę HTTP żądania: get , delete ,
patch , post lub put . Wartość domyślna to get . |
payload | String | ładunek (czyli treść POST) żądania. Tak Metody HTTP (np. GET) nie akceptują ładunku. Może to być ciąg, tablica bajtów, blob czy JavaScript. Obiekt JavaScript jest interpretowany jako mapa pola formularza nazwy na wartości, gdzie wartościami mogą być ciągi tekstowe lub obiekty blob. |
useIntranet | Boolean | Rola wycofana. Instruuje to pobieranie, aby rozwiązać określony Adres URL w intranecie połączony z Twoją domeną przez (wycofany) SDC |
validateHttpsCertificates | Boolean | Jeśli false , pobieranie ignoruje dowolne
nieprawidłowe certyfikaty dla żądań HTTPS. Wartość domyślna to true . |
followRedirects | Boolean | Jeśli false , pobieranie nie zostanie automatycznie
należy stosować przekierowania HTTP; zwraca pierwotną odpowiedź HTTP. Wartość domyślna to true . |
muteHttpExceptions | Boolean | Jeśli true , pobieranie nie zwróci
wyjątek, jeśli kod odpowiedzi wskazuje na niepowodzenie, a zamiast tego zwraca HTTPResponse . Wartość domyślna to false . |
escaping | Boolean | Jeśli false znaku zarezerwowanego w adresie URL nie jest
uciekł. Wartość domyślna to true . |
Powrót
HTTPResponse
– dane odpowiedzi HTTP.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.external_request
fetchAll(requests)
Wysyła wiele żądań pobrania wielu adresów URL za pomocą opcjonalnych parametrów zaawansowanych.
Działają one zarówno w przypadku protokołów HTTP, jak i HTTPS.
// Make both a POST request with form data, and a GET request. var resumeBlob = Utilities.newBlob('Hire me!', 'text/plain', 'resume.txt'); var 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') var request1 = { 'url': 'https://httpbin.org/post', 'method' : 'post', 'payload' : formData }; // A request may also just be a URL. var request2 = 'https://httpbin.org/get?key=value'; UrlFetchApp.fetchAll([request1, request2]);
Parametry
Nazwa | Typ | Opis |
---|---|---|
requests | Object[] | Tablica adresów URL lub obiektów JavaScript określająca żądania zgodnie z definicją poniżej. |
Parametry zaawansowane
Nazwa | Typ | Opis |
---|---|---|
url | String | adres URL do pobrania. Adres URL może mieć maksymalnie 2082 znaki. |
contentType | String | typ treści (wartość domyślna to 'application/x-www-form-urlencoded'). Innym przykładem typu treści jest „application/xml; charset=utf-8'. |
headers | Object | mapa klucz-wartość JavaScriptu nagłówków HTTP dla żądania |
method | String | metodę HTTP żądania: get , delete ,
patch , post lub put . Wartość domyślna to get . |
payload | String | ładunek (czyli treść POST) żądania. Tak Metody HTTP (np. GET) nie akceptują ładunku. Może to być ciąg, tablica bajtów, blob czy JavaScript. Obiekt JavaScript jest interpretowany jako mapa pola formularza nazwy na wartości, gdzie wartościami mogą być ciągi tekstowe lub obiekty blob. |
useIntranet | Boolean | Rola wycofana. Instruuje to pobieranie, aby rozwiązać określony Adres URL w intranecie połączony z Twoją domeną przez (wycofany) SDC |
validateHttpsCertificates | Boolean | Jeśli false , pobieranie ignoruje dowolne
nieprawidłowe certyfikaty dla żądań HTTPS. Wartość domyślna to true . |
followRedirects | Boolean | Jeśli false , pobieranie nie zostanie automatycznie
należy stosować przekierowania HTTP; zwraca pierwotną odpowiedź HTTP. Wartość domyślna to true . |
muteHttpExceptions | Boolean | Jeśli true , pobieranie nie zwróci
wyjątek, jeśli kod odpowiedzi wskazuje na niepowodzenie, a zamiast tego zwraca HTTPResponse . Wartość domyślna to false . |
escaping | Boolean | Jeśli false , znaki zarezerwowane w adresie URL nie są
uciekł. Wartość domyślna to true . |
Powrót
HTTPResponse[]
– tablica danych odpowiedzi HTTP z każdego żądania wejściowego.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.external_request
getRequest(url)
Zwraca żądanie wysłane po wywołaniu operacji.
Ta metoda nie powoduje przesłania żądania.
// The code below logs the value for every key of the returned map. var response = UrlFetchApp.getRequest("http://www.google.com/"); for(i in response) { Logger.log(i + ": " + response[i]); }
Parametry
Nazwa | Typ | Opis |
---|---|---|
url | String | Adres URL do wyszukania. Adres URL może mieć maksymalnie 2082 znaki. |
Powrót
Object
– mapa pól Nazwa pola na Wartość. Mapa zawiera co najmniej te klucze: url
,
method
, contentType
, payload
i headers
.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.external_request
getRequest(url, params)
Zwraca żądanie wysłane w przypadku wywołania operacji.
Ta metoda nie powoduje przesłania żądania.
Parametry
Nazwa | Typ | Opis |
---|---|---|
url | String | Adres URL do wyszukania. Adres URL może mieć maksymalnie 2082 znaki. |
params | Object | Opcjonalny obiekt JavaScript określający zaawansowane parametry zdefiniowane poniżej. |
Parametry zaawansowane
Nazwa | Typ | Opis |
---|---|---|
contentType | String | typ treści (wartość domyślna to 'application/x-www-form-urlencoded'). Innym przykładem typu treści jest „application/xml; charset=utf-8'. |
headers | Object | mapa klucz-wartość JavaScriptu nagłówków HTTP dla żądania |
method | String | metodę HTTP żądania: get , delete ,
patch , post lub put . Wartość domyślna to get . |
payload | String | ładunek (czyli treść POST) żądania. Tak Metody HTTP (np. GET) nie akceptują ładunku. Może to być ciąg, tablica bajtów, blob czy JavaScript. Obiekt JavaScript jest interpretowany jako mapa pola formularza nazwy na wartości, gdzie wartościami mogą być ciągi tekstowe lub obiekty blob. |
useIntranet | Boolean | Rola wycofana. Instruuje to pobieranie, aby rozwiązać określony Adres URL w intranecie połączony z Twoją domeną przez (wycofany) SDC |
validateHttpsCertificates | Boolean | Jeśli false , pobieranie ignoruje dowolne
nieprawidłowe certyfikaty dla żądań HTTPS. Wartość domyślna to true . |
followRedirects | Boolean | Jeśli false , pobieranie nie zostanie automatycznie
należy stosować przekierowania HTTP; zwraca pierwotną odpowiedź HTTP. Wartość domyślna to true . |
muteHttpExceptions | Boolean | Jeśli true , pobieranie nie zwróci
wyjątek, jeśli kod odpowiedzi wskazuje na niepowodzenie, a zamiast tego zwraca HTTPResponse . Wartość domyślna to false . |
escaping | Boolean | Jeśli false znaku zarezerwowanego w adresie URL nie jest
uciekł. Wartość domyślna to true . |
Powrót
Object
– mapa pól Nazwa pola na Wartość. Mapa zawiera co najmniej te klucze: url
,
method
, contentType
, payload
i headers
.
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:
-
https://www.googleapis.com/auth/script.external_request