جلب الموارد والتواصل مع المضيفين الآخرين عبر الإنترنت
تسمح هذه الخدمة للنصوص البرمجية بالتواصل مع التطبيقات الأخرى أو الوصول إلى موارد أخرى على الويب من خلال جلب عناوين URL. ويمكن للنص البرمجي استخدام خدمة "جلب عناوين URL" لإصدار طلبات HTTP وHTTPS وتلقّي الردود. تستخدِم خدمة "جلب عنوان URL" بنية شبكة Google التحتية لأغراض الكفاءة والتوسّع.
تأتي الطلبات المقدَّمة باستخدام هذه الخدمة من مجموعة محدّدة من نطاقات عناوين IP. يمكنك الاطّلاع على القائمة الكاملة لعناوين IP إذا كنت بحاجة إلى إضافة هذه الطلبات إلى القائمة المسموح بها أو الموافقة عليها.
تتطلّب هذه الخدمة نطاق https://www.googleapis.com/auth/script.external_request
. في معظم الحالات، ترصد أداة "برمجة تطبيقات Google" النطاقات التي يحتاجها النص البرمجي وتضمّنها تلقائيًا،
ولكن إذا كنت تضبط نطاقاتك
بشكل صريح، عليك إضافة هذا النطاق يدويًا لاستخدام Url
.
انظر أيضًا
الطُرق
الطريقة | نوع القيمة التي يتم عرضها | وصف قصير |
---|---|---|
fetch(url) | HTTPResponse | يُقدّم طلبًا لجلب عنوان URL. |
fetch(url, params) | HTTPResponse | يُقدّم طلبًا لجلب عنوان URL باستخدام مَعلمات متقدّمة اختيارية. |
fetch | HTTPResponse[] | يُجري طلبات متعددة لجلب عناوين URL متعددة باستخدام مَعلمات متقدمة اختيارية. |
get | Object | تعرِض هذه السمة الطلب الذي تم تقديمه في حال تمّ استدعاء العملية. |
get | Object | تعرِض هذه السمة الطلب الذي تم تقديمه في حال تمّ استدعاء العملية. |
مستندات تفصيلية
fetch(url)
يُقدّم طلبًا لجلب عنوان URL.
ويعمل هذا الإجراء على بروتوكول HTTP و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());
المعلَمات
الاسم | النوع | الوصف |
---|---|---|
url | String | عنوان URL المطلوب استرجاعه. يمكن أن يتضمّن عنوان URL ما يصل إلى 2,082 حرفًا. |
الإرجاع
HTTPResponse
: بيانات استجابة HTTP
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/script.external_request
fetch(url, params)
يُقدّم طلبًا لجلب عنوان URL باستخدام مَعلمات متقدّمة اختيارية.
ويعمل هذا الإجراء على بروتوكول HTTP و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);
المعلَمات
الاسم | النوع | الوصف |
---|---|---|
url | String | عنوان URL المطلوب استرجاعه. يمكن أن يتضمّن عنوان URL ما يصل إلى 2,082 حرفًا. |
params | Object | عنصر JavaScript اختياري يحدّد المَعلمات المتقدّمة كما هو محدّد أدناه. |
المعلمات المتقدمة
الاسم | النوع | الوصف |
---|---|---|
content | String | نوع المحتوى (الإعداد التلقائي هو 'application/x-www-form-urlencoded'). مثال آخر على نوع المحتوى هو "application/xml; charset=utf-8". |
headers | Object | خريطة مفتاح/قيمة JavaScript لعناوين HTTP للطلب |
method | String | طريقة HTTP للطلب: get أو delete
patch أو post أو put القيمة التلقائية هي get . |
payload | String | الحمولة (أي نص POST) للطلب. لا تقبل بعض methods HTTP (مثل GET) حمولة. يمكن أن يكون سلسلة أو مصفوفة بايت أو ملفًا بتنسيق blob أو عنصرًا في JavaScript. يتم تفسير عنصر JavaScript على أنّه خريطة لأسماء حقل النموذج إلى القيم، حيث يمكن أن تكون القيم إما سلاسل أو مجموعات بيانات. |
use | Boolean | تمّ الإيقاف. يوجّه هذا الإجراء عملية الجلب إلى تحليل عنوان URL المحدّد ضمن شبكة الإنترنت الداخلية المرتبطة بنطاقك من خلال SDC (المعروفة باسم SDC المتوقّفة نهائيًا). |
validate | Boolean | إذا كان false يساوي 1، يتجاهل الإجراء جلب أي
شهادات غير صالحة لطلبات HTTPS. القيمة التلقائية هي true . |
follow | Boolean | إذا false لم يتبع الإجراء تلقائيًا
عمليات إعادة التوجيه في HTTP، سيعرض استجابة HTTP الأصلية. القيمة التلقائية هي true . |
mute | Boolean | إذا كان true ، لا يُرسِل الإجراء الذي يتم تنفيذه لطلب البيانات
استثناءً إذا كان رمز الاستجابة يشير إلى تعذُّر إكمال العملية، بل يعرض HTTPResponse بدلاً من ذلك. القيمة التلقائية هي false . |
escaping | Boolean | إذا لم يتم false تحويل الأحرف المحجوزة في عنوان URL
إلى أحرف عادية القيمة التلقائية هي true . |
الإرجاع
HTTPResponse
: بيانات استجابة HTTP
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/script.external_request
fetch All(requests)
يُجري طلبات متعددة لجلب عناوين URL متعددة باستخدام مَعلمات متقدمة اختيارية.
ويعمل هذا الإجراء على بروتوكول HTTP بالإضافة إلى 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]);
المعلَمات
الاسم | النوع | الوصف |
---|---|---|
requests | Object[] | مصفوفة من عناوين URL أو كائنات JavaScript تحدّد الطلبات على النحو الموضّح أدناه |
المعلمات المتقدمة
الاسم | النوع | الوصف |
---|---|---|
url | String | عنوان URL المطلوب استرجاعه يمكن أن يتضمّن عنوان URL ما يصل إلى 2,082 حرفًا. |
content | String | نوع المحتوى (الإعداد التلقائي هو 'application/x-www-form-urlencoded'). مثال آخر على نوع المحتوى هو "application/xml; charset=utf-8". |
headers | Object | خريطة مفتاح/قيمة JavaScript لعناوين HTTP للطلب |
method | String | طريقة HTTP للطلب: get أو delete
patch أو post أو put القيمة التلقائية هي get . |
payload | String | الحمولة (أي نص POST) للطلب. لا تقبل بعض methods HTTP (مثل GET) حمولة. يمكن أن يكون سلسلة أو مصفوفة بايت أو ملفًا بتنسيق blob أو عنصرًا في JavaScript. يتم تفسير عنصر JavaScript على أنّه خريطة لأسماء حقل النموذج إلى القيم، حيث يمكن أن تكون القيم إما سلاسل أو مجموعات بيانات. |
use | Boolean | تمّ الإيقاف. يوجّه هذا الإجراء عملية الجلب إلى تحليل عنوان URL المحدّد ضمن شبكة الإنترنت الداخلية المرتبطة بنطاقك من خلال SDC (المنتهية الصلاحية). |
validate | Boolean | إذا كان false يساوي 1، يتجاهل الإجراء جلب أي
شهادات غير صالحة لطلبات HTTPS. القيمة التلقائية هي true . |
follow | Boolean | إذا false لم يتبع الإجراء تلقائيًا
عمليات إعادة التوجيه في HTTP، سيعرض استجابة HTTP الأصلية. القيمة التلقائية هي true . |
mute | Boolean | إذا كان true ، لا يُرسِل الإجراء "جلب"
استثناءً إذا كان رمز الاستجابة يشير إلى تعذُّر إكمال العملية، بل يعرض HTTPResponse بدلاً من ذلك. القيمة التلقائية هي false . |
escaping | Boolean | إذا كان false ، لا تتم معالجة الأحرف المحجوزة في عنوان URL. القيمة التلقائية هي true . |
الإرجاع
HTTPResponse[]
: صفيف من بيانات استجابة HTTP من كل طلب إدخال
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/script.external_request
get Request(url)
تعرِض هذه السمة الطلب الذي تم تقديمه في حال تمّ استدعاء العملية.
لا تُصدر هذه الطريقة الطلب فعليًا.
// 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]}`); }
المعلَمات
الاسم | النوع | الوصف |
---|---|---|
url | String | عنوان URL المطلوب البحث عنه يمكن أن يتضمّن عنوان URL ما يصل إلى 2,082 حرفًا. |
الإرجاع
Object
- تعيين اسم الحقل إلى القيمة تحتوي الخريطة على المفاتيح التالية على الأقل: url
،
method
، وcontent
، وpayload
، وheaders
.
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/script.external_request
get Request(url, params)
تعرِض هذه السمة الطلب الذي تم تقديمه في حال تمّ استدعاء العملية.
لا تُصدر هذه الطريقة الطلب فعليًا.
المعلَمات
الاسم | النوع | الوصف |
---|---|---|
url | String | عنوان URL المطلوب البحث عنه يمكن أن يتضمّن عنوان URL ما يصل إلى 2,082 حرفًا. |
params | Object | كائن JavaScript اختياري يحدِّد المَعلمات المتقدّمة كما هو محدّد أدناه |
المعلمات المتقدمة
الاسم | النوع | الوصف |
---|---|---|
content | String | نوع المحتوى (الإعداد التلقائي هو 'application/x-www-form-urlencoded'). مثال آخر على نوع المحتوى هو "application/xml; charset=utf-8". |
headers | Object | خريطة مفتاح/قيمة JavaScript لعناوين HTTP للطلب |
method | String | طريقة HTTP للطلب: get أو delete
patch أو post أو put القيمة التلقائية هي get . |
payload | String | الحمولة (أي نص POST) للطلب. لا تقبل بعض methods HTTP (مثل GET) حمولة. يمكن أن يكون سلسلة أو مصفوفة بايت أو ملفًا بتنسيق blob أو عنصرًا في JavaScript. يتم تفسير عنصر JavaScript على أنّه خريطة لأسماء حقل النموذج إلى القيم، حيث يمكن أن تكون القيم إما سلاسل أو مجموعات بيانات. |
use | Boolean | تمّ الإيقاف. يوجّه هذا الإجراء عملية الجلب إلى تحليل عنوان URL المحدّد ضمن شبكة الإنترنت الداخلية المرتبطة بنطاقك من خلال SDC (المنتهية الصلاحية). |
validate | Boolean | إذا كان false يساوي 1، يتجاهل الإجراء جلب أي
شهادات غير صالحة لطلبات HTTPS. القيمة التلقائية هي true . |
follow | Boolean | إذا false لم يتبع الإجراء تلقائيًا
عمليات إعادة التوجيه في HTTP، سيعرض استجابة HTTP الأصلية. القيمة التلقائية هي true . |
mute | Boolean | إذا كان true ، لا يُرسِل الإجراء الذي يتم تنفيذه لطلب البيانات
استثناءً إذا كان رمز الاستجابة يشير إلى تعذُّر إكمال العملية، بل يعرض HTTPResponse بدلاً من ذلك. القيمة التلقائية هي false . |
escaping | Boolean | إذا لم يتم false إلغاء أحرف محجوزة في عنوان URL
القيمة التلقائية هي true . |
الإرجاع
Object
- تعيين اسم الحقل إلى القيمة تحتوي الخريطة على المفاتيح التالية على الأقل: url
،
method
، وcontent
، وpayload
، وheaders
.
التفويض
تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/script.external_request