Данные и подключения
Сохраняйте записи, подключайте приложения и добавляйте вход на сайт
Вашему сайту может потребоваться сохранять заявки, запоминать прогресс или показывать информацию из подключённых приложений. Сообщите ChatGPT, что нужно сохранять, откуда поступает информация и кто должен иметь к ней доступ.
Выбор функций хранения данных и входа
Для новых проектов процесс создания сайта может начинаться с рекомендуемого стартового шаблона. Для существующего проекта попросите ChatGPT подтвердить, что проект может создавать совместимые артефакты развёртывания, прежде чем запрашивать развёртывание.
Опишите, что должен делать сайт, чтобы ChatGPT мог выбрать необходимые функции хранения данных и идентификации:
| Потребность сайта | Что запросить у sites |
|---|---|
| Информационный сайт или посадочная страница | Сайт без постоянного хранения состояния приложения, если оно не требуется для работы сайта |
| Сохранённые записи, прогресс пользователей или игровые результаты | D1 — реляционная база данных для долговременного хранения структурированных данных |
| Изображения, документы, аудио, видео и другие загружаемые материалы | R2 — объектное хранилище для файлов |
| Загруженные файлы с метаданными, по которым можно выполнять поиск | D1 для метаданных и R2 для содержимого файлов |
| Внутренний сайт, которому нужны данные о текущем пользователе рабочего пространства | Идентификация пользователя через аутентификацию рабочего пространства |
| Вход для внешних пользователей или внешний провайдер идентификации | Сайт с поддержкой аутентификации |
Не запрашивайте долговременное хранение для временного состояния интерфейса, например выбранной темы или закрытого баннера. Запрашивайте его для данных продукта, которые, по ожиданиям пользователей, должны сохраняться на размещённом сайте.
Добавление входа через ChatGPT
Общедоступные сайты могут оставаться открытыми для всех, предлагая необязательный вход через ChatGPT для функций, учитывающих личность пользователя: сохранённого прогресса, персонализированного отображения или записей, принадлежащих конкретному человеку. Сайты с доступом только для рабочего пространства уже используют идентификацию ChatGPT для применения настроек доступа.
Попросите sites добавить вход:
Запрос:
Add Sign in with ChatGPT to this public site. Keep the site available to signed-out visitors. Show a Sign in with ChatGPT action when someone is signed out. After they sign in, greet them with their full name when available, or their email address otherwise. Add a Sign out action, and keep authorization decisions in server-side code.Как это работает
Sites обрабатывает вход и выход через пути, предоставляемые платформой, а затем возвращает посетителя на ваш сайт:
<a href="/signin-with-chatgpt">Sign in with ChatGPT</a>
<a href="/signout-with-chatgpt">Sign out</a>После входа посетителя sites передаёт данные о его личности на сервер через следующие заголовки запроса:
oai-authenticated-user-emailсодержит адрес электронной почты прошедшего аутентификацию пользователя.oai-authenticated-user-full-nameможет содержать непустое имя профиля. Считайте его необязательным и используйте адрес электронной почты, если имя отсутствует.
Принимайте решения об авторизации в серверном коде и не полагайтесь на заголовки с отдельными частями имени.
Передача пользовательских данных на сайт с помощью плагинов
Используйте плагины в sites, чтобы создать сайт, который загружает данные из подключённых приложений каждого посетителя. Например, панель задач может показывать вам назначенные вам задачи, а вашему коллеге — назначенные ему. Каждый посетитель входит через ChatGPT и выбирает, какие подключённые учётные записи использовать и какой доступ предоставить.
Создание сайта с подключёнными данными
- Попросите ChatGPT Work или Codex создать сайт. Укажите коннектор плагина и его назначение или спросите, какие плагины доступны.
- Проверьте предварительную версию с реальными данными. Агент использует доступные вам подключения при создании и предварительном просмотре сайта.
- Попросите агента опубликовать сайт для вашего рабочего пространства и поделитесь ссылкой с коллегами.
Например:
Запрос:
Build a site using my connected issue tracker that shows issues assigned to me, grouped by priority. Add project filters, links to the original issues, and a Refresh button.Вы также можете создать средство поиска документов со ссылками на оригиналы или обзор проекта, объединяющий задачи и сообщения.
Загрузка данных
При загрузке страницы sites считывает подключённые данные с использованием подключения и разрешений посетителя. Sites управляет кэшированием и повторной загрузкой; при необходимости попросите ChatGPT Work или Codex добавить действие для обновления вручную.
По умолчанию sites использует действие Загрузить ещё, чтобы получить следующую страницу, когда коннектор возвращает курсор.
Технический справочник: обнаружение плагинов
Sites использует getContext() для поиска действий плагина. Этот механизм возвращает кэшированные имена, описания и схемы инструментов, не обновляя результаты обнаружения.
Сведения о поддерживаемых действиях подключённых приложений и их доступности см. в статье Создание и использование ChatGPT Sites в Справочном центре.
Выбор подключений посетителями
Чтобы использовать функции подключённых приложений, посетитель входит через ChatGPT, проверяет запрашиваемый сайтом доступ к приложениям, выбирает подключённую учётную запись и разрешённый уровень доступа, а затем возвращается на сайт. Предоставление доступа к сайту не даёт доступа к вашим подключённым учётным записям. Сайт получает данные из приложений, доступ к которым разрешает каждый посетитель.
Посетители могут продолжить без предоставления доступа к приложениям, но функции, которым он нужен, работать не будут. Если приложение недоступно, проверьте, подключено ли оно в нужном рабочем пространстве и разрешено ли его настройками.