Kaynakları getirmek ve internet üzerinden diğer ana makinelerle iletişim kurmak için kullanılır.
Bu hizmet, komut dosyalarının URL'leri getirerek diğer uygulamalarla iletişim kurmasına veya web'deki diğer kaynaklara erişmesine olanak tanır. Bir komut dosyası, HTTP ve HTTPS istekleri göndermek ve yanıt almak için URL getirme hizmetini kullanabilir. URL Getirme hizmeti, verimlilik ve ölçeklendirme amacıyla Google'ın ağ altyapısını kullanır.
Bu hizmet kullanılarak yapılan istekler, bir dizi IP aralığından kaynaklanır. Bu istekleri izin verilenler listesine eklemeniz veya onaylamanız gerekiyorsa IP adreslerinin tam listesini arayabilirsiniz.
Bu hizmet için https://www.googleapis.com/auth/script.external_request
kapsamı gerekir. Çoğu durumda Apps Komut Dosyası, bir komut dosyasının ihtiyaç duyduğu kapsamları otomatik olarak algılar ve dahil eder. Ancak kapsamlarınızı açıkça ayarlıyorsanız UrlFetchApp işlevini kullanmak için bu kapsamı manuel olarak eklemeniz gerekir.
Aşağıdaki kaynakları da incelemenizi öneririz:
Yöntemler
| Yöntem | Dönüş türü | Kısa açıklama |
|---|---|---|
fetch(url) | HTTPResponse | Bir URL'yi getirmek için istekte bulunur. |
fetch(url, params) | HTTPResponse | İsteğe bağlı gelişmiş parametreleri kullanarak bir URL'yi getirmek için istekte bulunur. |
fetch | HTTPResponse[] | İsteğe bağlı gelişmiş parametreleri kullanarak birden fazla URL getirmek için birden fazla istekte bulunur. |
get | Object | İşlem çağrıldıysa yapılan isteği döndürür. |
get | Object | İşlem çağrılırsa yapılan isteği döndürür. |
Ayrıntılı belgeler
fetch(url)
Bir URL'yi getirmek için istekte bulunur.
Bu özellik hem HTTP hem de HTTPS üzerinden çalışır.
// The code below logs the HTML code of the Google home page. const response = UrlFetchApp.fetch('http://www.google.com/'); Logger.log(response.getContentText());
Parametreler
| Ad | Tür | Açıklama |
|---|---|---|
url | String | Getirilecek URL. URL en fazla 2.082 karakter uzunluğunda olabilir. |
Return
HTTPResponse: HTTP yanıt verileri.
Yetkilendirme
Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:
-
https://www.googleapis.com/auth/script.external_request
fetch(url, params)
İsteğe bağlı gelişmiş parametreleri kullanarak bir URL'yi getirmek için istekte bulunur.
Bu özellik hem HTTP hem de HTTPS üzerinden çalışır.
// 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);
Parametreler
| Ad | Tür | Açıklama |
|---|---|---|
url | String | Getirilecek URL. URL en fazla 2.082 karakter uzunluğunda olabilir. |
params | Object | Aşağıda tanımlandığı şekilde gelişmiş parametreleri belirten isteğe bağlı JavaScript nesnesi. |
Gelişmiş parametreler
| Ad | Tür | Açıklama |
|---|---|---|
content | String | içerik türü ("application/x-www-form-urlencoded" olarak ayarlanır). İçerik türüne bir başka örnek de "application/xml; charset=utf-8" şeklindedir. |
headers | Object | İstek için HTTP başlıklarının JavaScript anahtar/değer eşlemesi |
method | String | İsteğin HTTP yöntemi: get, delete,
patch, post veya put. Varsayılan değer get'dir. |
payload | String | İsteğin yükü (yani POST gövdesi). Belirli HTTP yöntemleri (örneğin, GET) yükü kabul etmez. Dize, bayt dizisi, blob veya JavaScript nesnesi olabilir. JavaScript nesnesi, değerlerin dize veya blob olabileceği, form alanı adlarının değerlerle eşlendiği bir harita olarak yorumlanır. |
use | Boolean | Kullanımdan kaldırıldı. Bu, getirme işlemine, alanınıza (kullanımdan kaldırılan) SDC aracılığıyla bağlı olan intranet içindeki belirtilen URL'yi çözme talimatı verir. |
validate | Boolean | Getirme işlemi, HTTPS istekleri için geçersiz sertifikaları false yoksayar. Varsayılan değer true'dir. |
follow | Boolean | Getirme işlemi false HTTP yönlendirmelerini otomatik olarak takip etmez; orijinal HTTP yanıtını döndürür. Varsayılan değer true'dir. |
mute | Boolean | true Getirme işlemi, yanıt kodu başarısızlığı gösterse bile istisna oluşturmaz ve bunun yerine HTTPResponse döndürür. Varsayılan değer false'dir. |
escaping | Boolean | URL'deki false ayrılmış karakterler kod dışına alınmamışsa. Varsayılan değer true'dir. |
Return
HTTPResponse: HTTP yanıt verileri.
Yetkilendirme
Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:
-
https://www.googleapis.com/auth/script.external_request
fetchAll(requests)
İsteğe bağlı gelişmiş parametreleri kullanarak birden fazla URL getirmek için birden fazla istekte bulunur.
Bu özellik hem HTTP hem de HTTPS üzerinden çalışır.
// 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]);
Parametreler
| Ad | Tür | Açıklama |
|---|---|---|
requests | Object[] | Aşağıda tanımlandığı şekilde istekleri belirten URL'ler veya JavaScript nesneleri dizisi. |
Gelişmiş parametreler
| Ad | Tür | Açıklama |
|---|---|---|
url | String | Getirilecek URL. URL en fazla 2.082 karakter uzunluğunda olabilir. |
content | String | içerik türü ("application/x-www-form-urlencoded" olarak ayarlanır). İçerik türüne bir başka örnek de "application/xml; charset=utf-8" şeklindedir. |
headers | Object | İstek için HTTP başlıklarının JavaScript anahtar/değer eşlemesi |
method | String | İsteğin HTTP yöntemi: get, delete,
patch, post veya put. Varsayılan değer get'dir. |
payload | String | İsteğin yükü (yani POST gövdesi). Belirli HTTP yöntemleri (örneğin, GET) yükü kabul etmez. Dize, bayt dizisi, blob veya JavaScript nesnesi olabilir. JavaScript nesnesi, değerlerin dize veya blob olabileceği, form alanı adlarının değerlerle eşlendiği bir harita olarak yorumlanır. |
use | Boolean | Kullanımdan kaldırıldı. Bu, getirme işlemine, alanınıza (kullanımdan kaldırılan) SDC aracılığıyla bağlı olan intranet içindeki belirtilen URL'yi çözme talimatı verir. |
validate | Boolean | Getirme işlemi, HTTPS istekleri için geçersiz sertifikaları false yoksayar. Varsayılan değer true'dir. |
follow | Boolean | Getirme işlemi false HTTP yönlendirmelerini otomatik olarak takip etmez; orijinal HTTP yanıtını döndürür. Varsayılan değer true'dir. |
mute | Boolean | true ise getirme işlemi, yanıt kodu başarısızlığı gösterse bile istisna oluşturmaz ve bunun yerine HTTPResponse değerini döndürür. Varsayılan değer false'dir. |
escaping | Boolean | false ise URL'deki ayrılmış karakterler kod dışına alınmaz. Varsayılan değer true'dir. |
Return
HTTPResponse[]: Her giriş isteğinden gelen HTTP yanıt verilerinin dizisi.
Yetkilendirme
Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:
-
https://www.googleapis.com/auth/script.external_request
getRequest(url)
İşlem çağrıldıysa yapılan isteği döndürür.
Bu yöntem, isteği gerçekten yayınlamaz.
// 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]}`); }
Parametreler
| Ad | Tür | Açıklama |
|---|---|---|
url | String | Aranacak URL. URL en fazla 2.082 karakter uzunluğunda olabilir. |
Return
Object — Alan Adı'ndan Değer'e eşleme. Haritada en az şu anahtarlar bulunur: url,
method, contentType, payload ve headers.
Yetkilendirme
Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:
-
https://www.googleapis.com/auth/script.external_request
getRequest(url, params)
İşlem çağrılırsa yapılan isteği döndürür.
Bu yöntem, isteği gerçekten yayınlamaz.
Parametreler
| Ad | Tür | Açıklama |
|---|---|---|
url | String | Aranacak URL. URL en fazla 2.082 karakter uzunluğunda olabilir. |
params | Object | Aşağıda tanımlandığı gibi gelişmiş parametreleri belirten isteğe bağlı bir JavaScript nesnesi. |
Gelişmiş parametreler
| Ad | Tür | Açıklama |
|---|---|---|
content | String | içerik türü ("application/x-www-form-urlencoded" olarak ayarlanır). İçerik türüne bir başka örnek de "application/xml; charset=utf-8" şeklindedir. |
headers | Object | İstek için HTTP başlıklarının JavaScript anahtar/değer eşlemesi |
method | String | İsteğin HTTP yöntemi: get, delete,
patch, post veya put. Varsayılan değer get'dir. |
payload | String | İsteğin yükü (yani POST gövdesi). Belirli HTTP yöntemleri (örneğin, GET) yükü kabul etmez. Dize, bayt dizisi, blob veya JavaScript nesnesi olabilir. JavaScript nesnesi, değerlerin dize veya blob olabileceği, form alanı adlarının değerlerle eşlendiği bir harita olarak yorumlanır. |
use | Boolean | Kullanımdan kaldırıldı. Bu, getirme işlemine, alanınıza (kullanımdan kaldırılan) SDC aracılığıyla bağlı olan intranet içindeki belirtilen URL'yi çözme talimatı verir. |
validate | Boolean | Getirme işlemi, HTTPS istekleri için geçersiz sertifikaları false yoksayar. Varsayılan değer true'dir. |
follow | Boolean | Getirme işlemi false HTTP yönlendirmelerini otomatik olarak takip etmez; orijinal HTTP yanıtını döndürür. Varsayılan değer true'dir. |
mute | Boolean | true Getirme işlemi, yanıt kodu başarısızlığı gösterse bile istisna oluşturmaz ve bunun yerine HTTPResponse döndürür. Varsayılan değer false'dir. |
escaping | Boolean | URL'de false ayrılmış karakter varsa bunlar kod dışına alınmaz. Varsayılan değer true'dir. |
Return
Object — Alan Adı'ndan Değer'e eşleme. Haritada en az şu anahtarlar bulunur: url,
method, contentType, payload ve headers.
Yetkilendirme
Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:
-
https://www.googleapis.com/auth/script.external_request