TsgcHTTP3Client › Olaylar › OnPushPromise

OnPushPromise Olay

Sunucu bir PUSH_PROMISE çerçevesiyle sunucu push'ını duyurduğunda tetiklenir.

Sözdizimi

property OnPushPromise: TsgcHTTP3PushPromiseEvent;
// TsgcHTTP3PushPromiseEvent = procedure(Sender: TObject; aPushId: Int64; const aHeaders: TStringList) of object

Parametreler

NameTypeAçıklama
SenderTObjectPUSH_PROMISE çerçevesini alan istemci.
aPushIdInt64Söz verilen push'ın tanımlayıcısı; daha sonra push edilmiş yanıtla ilişkilendirmek veya iptal etmek için kullanılır.
aHeadersTStringListSunucunun push etmeyi planladığı kaynağın istek başlıkları; name=value çiftleri olarak.

Varsayılan Değer

—

Remarks

OnPushPromise, sunucu bir PUSH_PROMISE çerçevesi gönderdiğinde tetiklenir (RFC 9114 Bölüm 7.2.5); bu çerçeve, istemcinin açıkça talep etmediği bir kaynağı push etmeyi planladığını duyurur. aHeaders listesi, söz verilen kaynağı açıklayan istek başlıklarını (:path ve :authority sözde başlıkları dahil) tutar; böylece uygulama bunun yararlı olup olmadığına karar verebilir. Kaynak zaten önbellekteyse veya gerekli değilse reddetmek için aPushId ile CancelPush'u çağırın. Sunucu push'ı yalnızca istemci SetMaxPushId ile push sınırını yükselttiğinde sunulur.

Örnek


procedure OnPushPromiseEvent(Sender: TObject; aPushId: Int64; const aHeaders: TStringList);
begin
  Log('Push promised, id: ' + IntToStr(aPushId));
end;

Olaylara Dön