2011-08-14 19 views
6

w3.org (RFC2616), parçalar için maksimum boyut tanımlamıyor gibi görünüyor. Ancak, maksimum yığın boyutu olmadan yığın uzantısı için yer yoktur. Maksimum yığın boyutu olmalı, aksi takdirde anlaşılmayacaksa yapmam gerektiği gibi yığın uzantısını görmezden gelemem (Alıntı: "MUST ignore chunk-extension extensions they do not understand").Aktarım Kodlama ile HTTP yanıtında azami yığın boyutu nedir?

+0

neden bir maksimum boyutu gerektiğini düşünüyorum mutlu olun

  • sonraki CRLF kadar her şeyi unutun bir onaltılık sayıyı mi? bir sunucu uyguluyor musunuz? müşteri ? bir vekil? – Yahia

  • cevap

    8

    Her yığın uzantısı bir yarım virgül ile başlamalı ve yığın uzantıları listesi bir CRLF ile bitmelidir. Öbek boyutunu ayrıştırırken, ya bir yarı kolonda ya da bir CRLF'de durun. Yarı kolonda durduysanız, bir sonraki CRLF'ye kadar olan her şeyi göz ardı edin. Maksimum yığın boyutuna gerek yoktur.

    chunk   = chunk-size [ chunk-extension ] CRLF 
           chunk-data CRLF 
    
    chunk-size  = 1*HEX 
    
    chunk-extension= *(";" chunk-ext-name [ "=" chunk-ext-val ]) 
    
    +0

    Roland'ın cevabında yazdığım aynı soruyla ilgili düşüncelerinizi sorun. – smRaj

    4

    HTTP belirtimleri, HTTP iletilerinin sözdizimi hakkında oldukça nettir.

    Öğe boyutu her zaman onaltılı sayı olarak verilir. Bu sayı doğrudan bir CRLF tarafından değil, bunun yerine bir ; ise, bir uzantının olduğunu bilirsiniz. Bu uzantı, adıyla tanımlanır (chunk-ext-name). Bu ismi hiç duymamış olsaydınız, MUST onu yoksayın.

    Sorununuz tam olarak nedir?

    +2

    Sunucu bozuk olduğunda ve hiç bitmeyen bir sayı göndererek ne yapmanız gerektiğini sormak ister misiniz? Bir kurban ol ve sonsuza dek hiç bitmeyen onaltılık sayıyı oku ya da başvurunuza uygun bir sınır sapta ve bu olduğunda bir uyarı çıkar mı? – smRaj

    +0

    @smRaj Uygulamanızda en mantıklı olan şey, muhtemelen makul bir sınır koymaktır. –

    +0

    @DavidSchwartz: Bu yardımcı olur. – smRaj