İnternet üzerinden kaynaklar getirmek ve diğer ana makinelerle iletişim kurmak.
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. Komut dosyaları, 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, belirli bir IP aralığı havuzundan gelir. Bu isteklere 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ı gereklidir. Çoğu durumda Apps Script, komut dosyasının ihtiyaç duyduğu kapsamları otomatik olarak algılayıp dahil eder. Ancak kapsamlarınızı açıkça ayarlıyorsanız Url
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 | URL getirme isteği gönderir. |
fetch(url, params) | HTTPResponse | İsteğe bağlı gelişmiş parametreleri kullanarak bir URL getirme isteği gönderir. |
fetch | HTTPResponse[] | İsteğe bağlı gelişmiş parametreleri kullanarak birden fazla URL almak için birden fazla istek gönderir. |
get | Object | İşlem çağrıldıysa yapılan isteği döndürür. |
get | Object | İşlem çağrılmış olsaydı yapılan isteği döndürür. |
Ayrıntılı dokümanlar
fetch(url)
URL getirme isteği gönderir.
Bu yöntem 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ının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:
-
https://www.googleapis.com/auth/script.external_request
fetch(url, params)
İsteğe bağlı gelişmiş parametreleri kullanarak bir URL getirme isteği gönderir.
Bu yöntem 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ü (varsayılan olarak "application/x-www-form-urlencoded"dir). İçerik türüne örnek olarak "application/xml; charset=utf-8" verilebilir. |
headers | Object | İsteğ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 'tir. |
payload | String | istek için yük (yani POST gövdesi). Bazı HTTP yöntemleri (ör. GET), yük kabul etmez. Dize, bayt dizisi, blob veya JavaScript nesnesi olabilir. JavaScript nesnesi, form alan adlarının değerleriyle eşleştirildiği bir harita olarak yorumlanır. Değerler dize veya blob olabilir. |
use | Boolean | Kullanımdan kaldırıldı. Bu, get'e, belirtilen URL'yi (desteği sonlandırılmış) SDC aracılığıyla alanınıza bağlı intranet içinde çözmesini söyler. |
validate | Boolean | false ise getirme işlemi, HTTPS istekleri için geçersiz sertifikaları yoksayar. Varsayılan değer true 'tir. |
follow | Boolean | false ise getirme işlemi HTTP yönlendirmelerini otomatik olarak takip etmez ve orijinal HTTP yanıtını döndürür. Varsayılan değer true 'tir. |
mute | Boolean | true ise yanıt kodu hatayı gösteriyorsa getirme işlemi istisna atmaz ve bunun yerine HTTPResponse değerini döndürür. Varsayılan değer false 'tir. |
escaping | Boolean | URL'deki false ayrılmış karakterler kod dışına alınmamışsa Varsayılan değer true 'tir. |
Return
HTTPResponse
: HTTP yanıtı verileri.
Yetkilendirme
Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:
-
https://www.googleapis.com/auth/script.external_request
fetch All(requests)
İsteğe bağlı gelişmiş parametreleri kullanarak birden fazla URL almak için birden fazla istek gönderir.
Bu yöntem 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ü (varsayılan olarak "application/x-www-form-urlencoded"dir). İçerik türüne örnek olarak "application/xml; charset=utf-8" verilebilir. |
headers | Object | İsteğ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 'tir. |
payload | String | istek için yük (yani POST gövdesi). Bazı HTTP yöntemleri (ör. GET), yük kabul etmez. Dize, bayt dizisi, blob veya JavaScript nesnesi olabilir. JavaScript nesnesi, form alan adlarının değerleriyle eşleştirildiği bir harita olarak yorumlanır. Değerler dize veya blob olabilir. |
use | Boolean | Kullanımdan kaldırıldı. Bu, get'e, belirtilen URL'yi (desteği sonlandırılmış) SDC aracılığıyla alanınıza bağlı intranet içinde çözmesini söyler. |
validate | Boolean | false ise getirme işlemi, HTTPS istekleri için geçersiz sertifikaları yoksayar. Varsayılan değer true 'tir. |
follow | Boolean | false ise getirme işlemi HTTP yönlendirmelerini otomatik olarak takip etmez ve orijinal HTTP yanıtını döndürür. Varsayılan değer true 'tir. |
mute | Boolean | true ise yanıt kodu hatayı gösteriyorsa getirme işlemi istisna atmaz ve bunun yerine HTTPResponse değerini döndürür. Varsayılan değer false 'tir. |
escaping | Boolean | false ise URL'deki ayrılmış karakterler kod dışına alınmaz. Varsayılan değer true 'tir. |
Return
HTTPResponse[]
: Her giriş isteğinde bulunan HTTP yanıtı verilerinin dizisi.
Yetkilendirme
Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:
-
https://www.googleapis.com/auth/script.external_request
get Request(url)
İşlem çağrıldıysa yapılan isteği döndürür.
Bu yöntem aslında isteği göndermez.
// 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 | Aratılacak URL. URL en fazla 2.082 karakter uzunluğunda olabilir. |
Return
Object
: Alan adı ile değer arasındaki eşleme. Harita en az şu anahtarlara sahiptir: url
,
method
, content
, payload
ve headers
.
Yetkilendirme
Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:
-
https://www.googleapis.com/auth/script.external_request
get Request(url, params)
İşlem çağrılmış olsaydı yapılan isteği döndürür.
Bu yöntem aslında isteği göndermez.
Parametreler
Ad | Tür | Açıklama |
---|---|---|
url | String | Aratılacak 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ı bir JavaScript nesnesi. |
Gelişmiş parametreler
Ad | Tür | Açıklama |
---|---|---|
content | String | içerik türü (varsayılan olarak "application/x-www-form-urlencoded"dir). İçerik türüne örnek olarak "application/xml; charset=utf-8" verilebilir. |
headers | Object | İsteğ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 'tir. |
payload | String | istek için yük (yani POST gövdesi). Bazı HTTP yöntemleri (ör. GET), yük kabul etmez. Dize, bayt dizisi, blob veya JavaScript nesnesi olabilir. JavaScript nesnesi, form alan adlarının değerleriyle eşleştirildiği bir harita olarak yorumlanır. Değerler dize veya blob olabilir. |
use | Boolean | Kullanımdan kaldırıldı. Bu, get'e, belirtilen URL'yi (desteği sonlandırılmış) SDC aracılığıyla alanınıza bağlı intranet içinde çözmesini söyler. |
validate | Boolean | false ise getirme işlemi, HTTPS istekleri için geçersiz sertifikaları yoksayar. Varsayılan değer true 'tir. |
follow | Boolean | false ise getirme işlemi HTTP yönlendirmelerini otomatik olarak takip etmez ve orijinal HTTP yanıtını döndürür. Varsayılan değer true 'tir. |
mute | Boolean | true ise yanıt kodu hatayı belirtiyorsa getirme işlemi istisna atmaz ve bunun yerine HTTPResponse değerini döndürür. Varsayılan değer false 'tir. |
escaping | Boolean | URL'deki false ayrılmış karakterler kod dışına alınmamışsa Varsayılan değer true 'tir. |
Return
Object
: Alan adı ile değer arasındaki eşleme. Harita en az şu anahtarlara sahiptir: url
,
method
, content
, payload
ve headers
.
Yetkilendirme
Bu yöntemi kullanan komut dosyalarının aşağıdaki kapsamlardan bir veya daha fazlası için yetkilendirilmesi gerekir:
-
https://www.googleapis.com/auth/script.external_request