描述
藉由啟用 metadata,任何實作 metadata.Provider 介面 的外掛程式,都會在每個 DNS 查詢的處理開始時被呼叫,以便將其自己的中繼資料添加到上下文中。
收集到的中繼資料將透過 ServeDNS 函數中提供的 Context 參數,供所有外掛程式使用。套件(程式碼)文件中有關於如何檢查和檢索外掛程式可能感興趣的中繼資料的範例。
中繼資料是透過在上下文中設定帶有值的標籤來添加的。這些標籤應命名為 plugin/NAME
,其中 NAME 是描述性的名稱。 metadata 外掛程式強制執行的唯一硬性要求是標籤包含斜線。請參閱 metadata.SetValueFunc
的文件。
儲存的值為字串。空字串表示「無中繼資料」。請參閱 metadata.ValueFunc
的文件,了解如何檢索此值。
語法
metadata [ZONES... ]
- ZONES 應調用中繼資料的區域。
外掛程式
每個願意為其他外掛程式提供中繼資料資訊的外掛程式都需要實作 metadata.Provider
介面。它將被中繼資料呼叫,並從上下文中的所有外掛程式收集資訊。
注意:此方法應快速執行,因為它會針對每個請求呼叫。
範例
rewrite 外掛程式使用中繼資料來重寫請求。
另請參閱
Provider 介面 和 套件層級 文件。