데이터 및 연결

기록을 저장하고, 앱을 연결하고, 사이트에 로그인 기능을 추가하세요

사이트에서 요청을 저장하거나, 진행 상황을 기억하거나, 연결된 앱의 정보를 표시해야 할 수 있습니다. 무엇을 저장하고, 정보의 출처가 어디이며, 누가 접근할 수 있어야 하는지 ChatGPT에 알려 주세요.

저장소 및 로그인 기능 선택하기

새 프로젝트의 경우 sites 워크플로에서 권장하는 사이트 스타터로 시작할 수 있습니다. 기존 프로젝트의 경우 배포를 요청하기 전에 ChatGPT에 프로젝트가 호환되는 배포 아티팩트를 생성할 수 있는지 확인해 달라고 요청하세요.

ChatGPT가 필요한 저장소 및 ID 기능을 선택할 수 있도록 사이트에서 수행해야 할 작업을 설명하세요.

사이트 요구 사항 sites에 요청할 내용
콘텐츠 중심 웹사이트 또는 랜딩 페이지 사용자 경험에 필요한 경우를 제외하고 영구적인 애플리케이션 상태를 저장하지 않는 사이트
저장된 기록, 사용자 진행 상황 또는 게임 점수 구조화된 데이터를 영구적으로 저장하는 관계형 데이터베이스 D1
이미지, 문서, 오디오, 동영상 또는 기타 업로드 파일 파일용 객체 저장소 R2
검색 가능한 메타데이터가 있는 업로드 파일 메타데이터용 D1 및 파일 콘텐츠용 R2
현재 워크스페이스 사용자의 ID가 필요한 내부 사이트 워크스페이스에서 인증된 사용자 ID
공개 로그인 또는 외부 ID 공급자 인증이 활성화된 사이트

테마 선택이나 닫은 배너처럼 일시적인 표시 상태를 위해 영구 저장소를 요청하지 마세요. 사용자가 호스팅된 사이트에서 기억할 것으로 기대하는 제품 데이터에는 영구 저장소를 요청하세요.

ChatGPT로 로그인 추가하기

공개 사이트는 모든 사람에게 개방된 상태를 유지하면서 저장된 진행 상황, 개인화된 화면, 특정 사용자에게 속한 기록 등 사용자 ID를 활용하는 기능을 위해 선택적으로 ChatGPT로 로그인을 제공할 수 있습니다. 워크스페이스로 제한된 사이트는 이미 ChatGPT ID를 사용하여 공유 설정을 적용합니다.

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는 다음 요청 헤더를 통해 사용자의 ID를 서버로 전달합니다.

  • oai-authenticated-user-email에는 인증된 이메일 주소가 포함됩니다.
  • oai-authenticated-user-full-name에는 비어 있지 않은 프로필 이름이 포함될 수 있습니다. 이 값은 선택 사항으로 취급하고, 없으면 이메일 주소를 사용하세요.

권한 부여 결정은 서버 측 코드에서 처리하고, 이름을 분리한 헤더에 의존하지 마세요.

플러그인으로 사용자 데이터를 사이트에 가져오기

sites에서 플러그인을 사용하면 각 사이트 방문자가 자신의 연결된 앱에서 데이터를 불러오는 사이트를 만들 수 있습니다. 예를 들어 이슈 대시보드는 본인에게는 본인에게 할당된 이슈를, 팀원에게는 해당 팀원에게 할당된 이슈를 보여 줄 수 있습니다. 각 방문자는 ChatGPT로 로그인하고 허용할 연결 계정과 접근 권한을 선택합니다.

연결된 데이터로 사이트 만들기

  1. ChatGPT Work 또는 Codex에 사이트를 만들어 달라고 요청하세요. 플러그인 커넥터의 이름과 수행할 작업을 지정하거나 사용 가능한 플러그인을 물어보세요.
  2. 실제 데이터로 미리 보기를 사용해 보세요. 에이전트는 사이트를 만들고 미리 보는 동안 사용 가능한 연결을 사용합니다.
  3. 에이전트에 워크스페이스용으로 사이트를 게시하고 팀원들과 링크를 공유해 달라고 요청하세요.

예를 들면 다음과 같습니다.

프롬프트:

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로 로그인하고 사이트가 요청하는 앱 접근 권한을 검토한 다음 허용할 연결 계정과 접근 권한을 선택하고 사이트로 돌아옵니다. 사이트를 공유해도 본인의 연결 계정에 대한 접근 권한이 부여되지는 않습니다. 사이트는 각 방문자가 허용한 앱에서 데이터를 받습니다.

방문자는 앱 접근 권한을 부여하지 않고도 계속할 수 있지만, 해당 권한이 필요한 기능은 작동하지 않습니다. 앱을 사용할 수 없다면 올바른 워크스페이스에 연결되어 있고 워크스페이스 설정에서 허용되어 있는지 확인하세요.