跳轉到

指令碼開發 / 響應大量資料 DFF.RESP_LARGE_DATA

返回 MB 級或更大內容時,直接 return 會增加 JSON 序列化、Redis 訊息佇列和內部網路通訊的開銷。DFF.RESP_LARGE_DATA(...) 會將內容寫入臨時檔案並以檔案響應返回,避免在內部訊息中傳遞完整值。

引數

引數 型別 必須 / 預設值 說明
data str / dict / list / tuple 必須 大段文字或 JSON 可序列化資料
content_type str 自動推斷 字典、列表和元組預設為 json,其他型別預設為 txt;也可顯式指定
示例
1
2
3
@DFF.API('匯出大 JSON')
def export_large_json():
    return DFF.RESP_LARGE_DATA({'items': load_many_items()}, content_type='json')

所有 Web 服務和 Worker 必須訪問同一份資源儲存

本方法依賴共享資源目錄。高可用或多 Worker 部署時,必須保證資源目錄配置和掛載一致。

非字串資料必須能夠 JSON 序列化。二進位制資料應先寫入資源目錄,再使用 DFF.RESP_FILE(...) 返回。

content_type 應使用固定的短標籤,如 json、txt 或 html,不要傳入 MIME 字串、路徑文字或來自請求的值。

正數 DFF.API(cache_result=...) 可能保留生成的響應以供快取複用;未啟用快取時,響應傳送後會刪除臨時檔案。Script 不應依賴臨時檔名或保留時間。小資料應直接 return,僅在大資料場景使用本方法。