資料和連線
儲存記錄、連線應用,並為網站新增登入功能
你的網站可能需要儲存請求、記住進度或顯示連線的應用中的資訊。告訴 ChatGPT 要儲存什麼、資訊來自哪裡,以及哪些人應有存取權限。
選擇儲存和登入功能
對於新專案,sites 工作流程可以從推薦的網站 起始模板開始。對於現有專案,請要求 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 登入,檢視網站 請求的應用存取權限,選擇允許使用的連線帳號和存取權限, 然後傳回網站。分享網站不會授予他人存取你所連線帳號的 權限。網站會從每位訪客允許的應用中接收資料。
訪客可以在不授予應用存取權限的情況下繼續,但需要該權限的功能 將無法使用。如果某個應用不可用,請檢查它是否已在正確的 工作區中連線,並且工作區設定允許使用它。