REST Resource: sites.versions

المرجع: الإصدار

Version هو إعداد ومجموعة من الملفات الثابتة التي تحدّد طريقة عرض الموقع الإلكتروني.

تمثيل JSON
{
  "name": string,
  "status": enum (VersionStatus),
  "config": {
    object (ServingConfig)
  },
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "createUser": {
    object (ActingUser)
  },
  "finalizeTime": string,
  "finalizeUser": {
    object (ActingUser)
  },
  "deleteTime": string,
  "deleteUser": {
    object (ActingUser)
  },
  "fileCount": string,
  "versionBytes": string
}
الحقول
name

string

اسم المورد المؤهّل بالكامل للنسخة، بالتنسيق:

sites/SITE_ID/versions/VERSION_ID

يتم توفير هذا الاسم في نص الاستجابة عند الاتصال بـ versions.create.

status

enum (VersionStatus)

حالة نشر الإصدار.

لإجراء عملية نشر ناجحة، يمكنك الاتصال بالرقم versions.create لإنشاء إصدار جديد (الحالة CREATED)، ثم تحميل جميع الملفات المطلوبة إلى الإصدار، ثم تحديث الإصدار إلى الحالة FINALIZED.

يُرجى ملاحظة أنّه إذا تركت الإصدار في حالة CREATED لأكثر من 12 ساعة، سيضع النظام علامة ABANDONED على الإصدار تلقائيًا.

يمكنك أيضًا تغيير حالة أحد الإصدارات إلى DELETED من خلال الاتصال بالرقم versions.delete.

config

object (ServingConfig)

إعدادات سلوك الموقع الإلكتروني هذه الإعدادات متوفّرة في ملف firebase.json.

labels

map (key: string, value: string)

التسميات المستخدمة لإضافة بيانات وصفية و/أو تصفية إضافية.

عنصر يحتوي على قائمة بأزواج "key": value مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" }

createTime

string (Timestamp format)

النتائج فقط. وقت إنشاء النسخة

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

createUser

object (ActingUser)

النتائج فقط. يحدد المستخدم الذي أنشأ الإصدار.

finalizeTime

string (Timestamp format)

النتائج فقط. الوقت الذي كان فيه الإصدار FINALIZED.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

finalizeUser

object (ActingUser)

النتائج فقط. يحدد المستخدم الذي FINALIZED الإصدار.

deleteTime

string (Timestamp format)

النتائج فقط. الوقت الذي كان فيه الإصدار DELETED.

طابع زمني بتنسيق RFC3339 حسب التوقيت العالمي المنسَّق (UTC) "زولو" بدقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z".

deleteUser

object (ActingUser)

النتائج فقط. يحدد المستخدم الذي DELETED الإصدار.

fileCount

string (int64 format)

النتائج فقط. إجمالي عدد الملفات المرتبطة بالنسخة.

يتم احتساب هذه القيمة بعد أن تكون قيمة الإصدار FINALIZED.

versionBytes

string (int64 format)

النتائج فقط. إجمالي عدد وحدات البايت المخزَّنة للإصدار.

يتم احتساب هذه القيمة بعد أن تكون قيمة الإصدار FINALIZED.

حالة الإصدار

الحالة الحالية المعروفة لإصدار معيّن في دورة حياة النشر.

تعدادات
VERSION_STATUS_UNSPECIFIED الحالة التلقائية لا ينبغي أن يتم استخدامه عمدًا.
CREATED تم إنشاء الإصدار، وتتم حاليًا إضافة المحتوى إلى الإصدار.
FINALIZED تمت إضافة كل المحتوى إلى النسخة، ولم يعُد من الممكن تغيير النسخة.
DELETED تم حذف الإصدار.
ABANDONED لم يتم تحديث النسخة إلى FINALIZED خلال 12 ساعة وتم حذفها تلقائيًا.
EXPIRED الإصدار خارج الحد الأقصى الذي تم ضبطه في الموقع الإلكتروني لعدد النُسخ التي تم الاحتفاظ بها، لذا تمت جدولة محتوى النسخة للحذف.
CLONING يجري استنساخ هذا الإصدار من إصدار آخر. لا يزال يتم نسخ كل المحتوى.

إعدادات العرض

ضبط كيفية توجيه الطلبات الواردة إلى موقع إلكتروني ومعالجتها قبل عرض المحتوى. تتم مطابقة مسارات طلبات عنوان URL مع أنماط عناوين URL المحددة في التهيئة، ثم تطبِّق "الاستضافة" التهيئة السارية وفقًا لترتيب الأولوية المحدد.

تمثيل JSON
{
  "headers": [
    {
      object (Header)
    }
  ],
  "redirects": [
    {
      object (Redirect)
    }
  ],
  "rewrites": [
    {
      object (Rewrite)
    }
  ],
  "cleanUrls": boolean,
  "trailingSlashBehavior": enum (TrailingSlashBehavior),
  "i18n": {
    object (I18nConfig)
  }
}
الحقول
headers[]

object (Header)

مصفوفة من الكائنات، يحدد كل كائن فيها نمط عنوان URL، إذا تمت مطابقته مع مسار عنوان URL للطلب، يشغّل "الاستضافة" لتطبيق عناوين الاستجابة المخصصة المحددة.

redirects[]

object (Redirect)

مصفوفة من العناصر (تُسمى قواعد إعادة التوجيه)، حيث تحدد كل قاعدة نمط عنوان URL، إذا تمت مطابقته مع مسار عنوان URL للطلب، يؤدي إلى تشغيل الاستضافة من خلال عملية إعادة توجيه إلى مسار الوجهة المحدد.

rewrites[]

object (Rewrite)

مصفوفة من الكائنات (تسمى قواعد إعادة الكتابة)، حيث تحدد كل قاعدة نمط عنوان URL، إذا تمت مطابقته مع مسار عنوان URL للطلب، يؤدي إلى تشغيل الاستضافة للاستجابة كما لو تم منح الخدمة عنوان URL المقصود المحدد.

cleanUrls

boolean

تحدِّد هذه السياسة ما إذا كان سيتم إفلات امتداد الملف من الملفات المحمَّلة.

trailingSlashBehavior

enum (TrailingSlashBehavior)

لتحديد كيفية التعامل مع شرطة مائلة لاحقة في مسار عنوان URL.

i18n

object (I18nConfig)

هذه السمة اختيارية. لتحديد سلوك إعادة الكتابة i18n.

تحدّد Header نمط عنوان URL الذي يؤدي تطابقه مع مسار عنوان URL للطلب إلى تشغيل الاستضافة لتطبيق عناوين الاستجابة المخصّصة المحدّدة.

تمثيل JSON
{
  "headers": {
    string: string,
    ...
  },

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.
}
الحقول
headers

map (key: string, value: string)

مطلوب. العناوين الإضافية المطلوب إضافتها إلى الردّ

عنصر يحتوي على قائمة بأزواج "key": value مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" }

حقل الاتحاد pattern.
يجب ملء الحقل. نمط عنوان URL لسلسلة مطلوب مطابقته مع مسار عنوان URL للطلب لتحديد ما إذا كان يجب تطبيق عنوان الاستجابة المخصّصة هذا يمكن أن يكون إما غلوب بنمط باش أو تعبير RE2 عادي.

يمكن أن يكون pattern واحدًا فقط مما يلي:
glob

string

glob الذي يقدمه المستخدم للمطابقة مع مسار عنوان URL للطلب.

regex

string

التعبير العادي RE2 الذي يقدمه المستخدم للمطابقة مع مسار عنوان URL للطلب

إعادة توجيه

تحدّد Redirect نمط عنوان URL الذي يؤدي تطابقه مع مسار عنوان URL للطلب إلى تشغيل "الاستضافة" للاستجابة بعملية إعادة توجيه إلى مسار الوجهة المحدّد.

تمثيل JSON
{
  "statusCode": integer,
  "location": string,

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.
}
الحقول
statusCode

integer

مطلوب. رمز HTTP المطلوب عرضه في الاستجابة. يجب أن يكون رمز حالة 3xx صالحًا.

location

string

مطلوب. القيمة المطلوب إدخالها في عنوان موقع HTTP الخاص بالاستجابة.

يمكن أن يحتوي الموقع الجغرافي على قيم مجموعة الالتقاط من النمط باستخدام بادئة : لتحديد الشريحة وعنصر * اختياري للحصول على بقية عنوان URL. على سبيل المثال:

"glob": "/:capture*",
"statusCode": 301,
"location": "https://example.com/foo/:capture"

حقل الاتحاد pattern.
يجب ملء الحقل. نمط سلسلة لعنوان URL لمطابقته مع مسار عنوان URL للطلب لتحديد ما إذا كان سيتم تطبيق إعادة التوجيه هذه. يمكن أن يكون إما غلوب بنمط باش أو تعبير RE2 عادي.

يمكن أن يكون pattern واحدًا فقط مما يلي:
glob

string

glob الذي يقدمه المستخدم للمطابقة مع مسار عنوان URL للطلب.

regex

string

التعبير العادي RE2 الذي يقدمه المستخدم للمطابقة مع مسار عنوان URL للطلب

إعادة الكتابة

تحدّد Rewrite نمط عنوان URL الذي يؤدي تطابقه مع مسار عنوان URL للطلب إلى تشغيل "الاستضافة" للاستجابة كما لو تم منح الخدمة عنوان URL المقصود المحدّد.

تمثيل JSON
{
  "functionRegion": string,

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.

  // Union field behavior can be only one of the following:
  "path": string,
  "function": string,
  "run": {
    object (CloudRunRewrite)
  }
  // End of list of possible types for union field behavior.
}
الحقول
functionRegion

string

هذه السمة اختيارية. حدِّد منطقة على السحابة الإلكترونية لاستدعاءات الدوال التي تمت إعادة كتابتها. إذا لم يتم توفيره، سيتم ضبطه تلقائيًا على us-central1.

حقل الاتحاد pattern.
يجب ملء الحقل. نمط عنوان URL لسلسلة مطلوب مطابقته مع مسار عنوان URL للطلب من أجل تحديد ما إذا كان من الأفضل تطبيق إعادة الكتابة هذه يمكن أن يكون إما غلوب بنمط باش أو تعبير RE2 عادي.

يمكن أن يكون pattern واحدًا فقط مما يلي:
glob

string

glob الذي يقدمه المستخدم للمطابقة مع مسار عنوان URL للطلب.

regex

string

التعبير العادي RE2 الذي يقدمه المستخدم للمطابقة مع مسار عنوان URL للطلب

حقل الاتحاد behavior.
يجب ملء الحقل. تمثّل هذه السمة سلوك إعادة الكتابة.

يمكن أن يكون behavior واحدًا فقط مما يلي:
path

string

مسار عنوان URL المطلوب إعادة كتابة الطلب إليه.

function

string

الدالة المطلوب إرسال طلبات إلى الخادم الوكيل إليها. يجب أن يتطابق تمامًا مع اسم الدالة التي يتم تصديرها.

run

object (CloudRunRewrite)

ستتم إعادة توجيه الطلب إلى Cloud Run.

CloudRunRewrite

يشير ذلك المصطلح إلى عملية إعادة كتابة يتم ضبطها توجّه الطلبات إلى خدمة Cloud Run. سيتعذّر الطلب في حال عدم توفّر خدمة "تشغيل السحابة الإلكترونية" عند ضبط إعدادات "استضافة Firebase" أو تعديلها. يتم تمرير أي أخطاء من خدمة Cloud Run إلى المستخدم النهائي (على سبيل المثال، إذا حذفت خدمة، ستتلقّى أي طلبات موجَّهة إلى هذه الخدمة الخطأ 404).

تمثيل JSON
{
  "serviceId": string,
  "region": string,
  "tag": string
}
الحقول
serviceId

string

مطلوب. معرّف من تحديد المستخدم لخدمة Cloud Run

region

string

هذه السمة اختيارية. المنطقة التي يقدّمها المستخدم حيث تتم استضافة خدمة Cloud Run.

وتكون القيمة التلقائية us-central1 إذا لم يتم توفيرها.

tag

string

هذه السمة اختيارية. علامة TrafficConfig المقدّمة من المستخدم لإرسال الزيارات إليها

عند الحذف، يتم إرسال الزيارات إلى معرّف الموارد المنتظم (URI) على مستوى الخدمة.

سلوك شرطة مائلة لاحقة

تحدِّد هذه السياسة ما إذا كان يجب إضافة شَرطة مائلة لاحقة أو إزالتها من مسار عنوان URL للطلب.

تعدادات
TRAILING_SLASH_BEHAVIOR_UNSPECIFIED

لم يتم تحديد أي سلوك.

ويتم تقديم الملفات في موقعها الدقيق فقط، ولا تتم إضافة الشُرط المائلة اللاحقة إلا إلى فهارس الأدلة.

ADD وتتم إضافة الشُرط المائلة اللاحقة إلى فهارس الأدلة، وكذلك إلى أي مسار عنوان URL لا ينتهي بامتداد ملف.
REMOVE تتم إزالة الشرطات المائلة اللاحقة من فهارس الأدلة، ومن أي مسار عنوان URL لا ينتهي بامتداد ملف.

I18nConfig

وفي حال توفيرها، يتم تفعيل إعادة كتابة i18n.

تمثيل JSON
{
  "root": string
}
الحقول
root

string

مطلوب. المسار الذي يوفّره المستخدم حيث يتم البحث عن المحتوى الخاص بالبلد واللغة ضمن الدليل العام.

الطُرق

clone

ينشئ إصدارًا جديدًا على الموقع الإلكتروني المستهدَف المحدّد باستخدام محتوى الإصدار المحدّد.

create

ينشئ نسخة جديدة للموقع الإلكتروني المحدّد.

delete

يؤدي هذا الإجراء إلى حذف النسخة المحدَّدة.

get

الحصول على الإصدار المحدّد الذي تم إنشاؤه للموقع الإلكتروني المحدّد

list

يسرد الإصدارات التي تم إنشاؤها للموقع الإلكتروني المحدّد.

patch

لتعديل البيانات الوصفية المحدّدة للإصدار المحدّد

populateFiles

يضيف ملفات المحتوى إلى الإصدار المحدّد.