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-адреса запроса, чтобы определить, следует ли применять этот настраиваемый заголовок ответа. Может быть либо glob в стиле Bash, либо регулярным выражением 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-адреса запроса, чтобы определить, следует ли применять это перенаправление. Может быть либо glob в стиле Bash, либо регулярным выражением 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-адреса запроса, чтобы определить, следует ли применять эту перезапись. Может быть либо glob в стиле Bash, либо регулярным выражением 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. Если служба 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 всей службы.

ТрейлингSlashПоведение

Определяет, следует ли добавлять или удалять косую черту в пути URL-адреса запроса.

Перечисления
TRAILING_SLASH_BEHAVIOR_UNSPECIFIED

Поведение не указано.

Файлы обслуживаются только в их точном местоположении, а косые черты в конце добавляются только к индексам каталогов.

ADD Завершающие косые черты добавляются к индексам каталогов, а также к любому URL-пути, не заканчивающемуся расширением файла.
REMOVE Завершающие косые черты удаляются из индексов каталогов, а также из любого URL-пути, не заканчивающегося расширением файла.

I18nConfig

Если предусмотрено, перезапись i18n включена.

JSON-представление
{
  "root": string
}
Поля
root

string

Необходимый. Указанный пользователем путь, по которому в общедоступном каталоге будет выполняться поиск контента, специфичного для страны и языка.

Методы

clone

Создает новую версию на указанном целевом сайте, используя содержимое указанной версии.

create

Создает новую версию для указанного сайта.

delete

Удаляет указанную версию.

get

Получите указанную версию, созданную для указанного сайта.

list

Перечисляет версии, созданные для указанного сайта.

patch

Обновляет указанные метаданные для указанной версии.

populateFiles

Добавляет файлы содержимого в указанную версию.