2013-03-04 20 views
14

HTTP aralık üstbilgisi (specs) ile uğraşıyorum. Ben ala dosyaların byte aralıkları ayarlayabilirsiniz anladığımKısmi dosyaları "amaca yönelik" yüklemek için HTTP aralığı üstbilgisini kullanabilir miyim?

0-199/2000 
200-499/2000 
500-799/2000 
etc 

Soru:
aralıkları belirtmek mümkün olurdu, ben sadece bir dosyanın belirli aralıklar erişmek istediğini farz edelim ve Sonra aldığım "eksik" verilerle çalışıyorum? Büyük bir günlük dosyasını filtreleyerek oynuyorum, bu yüzden böyle bir şeyin işe yarayacağını merak ediyorum.

Girdiğin için teşekkürler!

+1

o başlık kullanmak için mükemmel durumda Bana kalırsa (seyir gelsin diye diğeri için) bir snippet'tir. http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.2 – Supericy

+0

Evet, aynı zamanda bu gibi durumlar için geliştirildiğini düşünüyorum. Bu işe yarıyor muydun? – VisioN

+0

Daha önce de belirtildiği gibi, bu tam * hangi dizi talepleri içindir. Bu genellikle medya "akış" HTTP ile nasıl yapılır. – rdlowrey

cevap

17

Yorumda gönderdiğiniz bağlantının muhtemelen en iyi yönerge olabileceğinden haklısınız. Sorunuz ilginç geldiği için denedim. Muhtemelen yaptım ama burada

var xmlhttp=new XMLHttpRequest(); 
xmlhttp.open("GET","data.dat",false); 
xmlhttp.setRequestHeader("Range", "bytes=100-200"); 
xmlhttp.send(); 
console.info(xmlhttp); //--> returns only the partial content 
// Tested on Win7 with chrome 46+ 
+0

evet. bu iyi. Ben de onunla oynuyorum. İlgili mantık dahil olmak üzere özel varlıkların nasıl ayarlanacağına merak. – frequent

+1

Özel varlıkların, Serverside komut dosyası/programlama ve web sunucusu ve programlama diline bağımlılık getireceğini varsayalım. İşte benzer bir soru/cevap/approche/ipucu/... [link] (http://stackoverflow.com/questions/1434647/using-the-http-range-header-with-a-range-specifier- diğer -than-bytes) :). –

+0

Bağlantı için teşekkürler! – frequent