“Blob: http: //” öneki nedir ve bu konuda nereden daha fazla bilgi edinebilirim?


35

Safari kullanıyorum ve bunun diğer tarayıcılarda çalışıp çalışmadığından emin değilim, ancak bir fırtına yolu hesabına kaydolduğumda, aşağıdaki URL'yi görüyorum

blob:https://api.stormpath.com/1be95204-93d6-4GUID HERE

Blob: prefix benim için yeni ve tüm tarayıcılarda çalışıp çalışmadığını ve başka hangi öneklerin var olabileceğini bilmek istiyorum.


2
İyi bir açıklaması vardır SO
Bakudan

Yanıtlar:


17

Blob URI / URL, JavaScript tarafından oluşturuldu, tarayıcınızın o andaki hafızasında (yalnızca geçerli sayfada) bulunan verileri ve ana bilgisayardaki var olan verileri ifade etmiyor.

Kullanmak için daha fazla bilgi için, bkz: https://www.npmjs.com/package/blob-util


8

İlk sütuna kadar bir URL'nin başlangıcına "URI şeması" (veya "URL şeması") denir. Google Googling blob URI scheme, W3C'nin Dosya API'sı çabalarını ortaya koyuyor .

Çoğu URI şemasında, başka bir URI'nin tümü için standart hükümler yoktur, bu yüzden onları başka bir URI'nın ön eki olarak düşünmezsiniz. Http: ve https: 'nin yanı sıra, bazı yaygın URI programları şunları içerir:

  • ftp:
  • mailto:
  • veri:
  • senaryo:
  • smb: (ve cif:)
  • afp:

…ve daha fazlası. Eminim herkesin favorilerini bırakıyorum. :)


7

URL dizesindeki blob hakkında arka plan bilgisi nedeniyle StackOverflow gelen yanıt kopyalayıp yapıştırın .

Bir JavaScript'ten oluşturulan bir URL, Blob"normal" bir URL'ye dönüştürülemez.

A blob: URL, sunucuda bulunan verilere değil, geçerli sayfa için tarayıcınızda o anda bellekte bulunan verilere karşılık gelir. Diğer sayfalarda bulunmayacak, diğer tarayıcılarda bulunmayacak ve diğer bilgisayarlardan kullanılamayacak.

Bu nedenle, genel olarak bir Blob URL'sini "normal" URL'ye dönüştürmek mantıklı değildir. Sıradan bir URL istiyorsanız, verileri tarayıcıdan bir sunucuya göndermeniz ve sunucunun sıradan bir dosya gibi kullanıma sunması gerekir.

Bir blob: URL'yi bir veriye dönüştürmek mümkündür: URL, en azından Chrome'da. Blob: URL'den verileri "almak" için bir AJAX isteği kullanabilirsiniz (gerçekte sadece bir HTTP isteği yapmadan, tarayıcınızın belleğinden çekmesine rağmen).


0

MDN, basit dilde bir şeyleri anlamak için iyi bir kaynaktır. Ayrıca https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL 'ı iyi bir kaynak olarak önerebilirim . Ayrıca, sayfalarının altında sağlanan Spiff ile aynı olan W3C spesifikasyonunu gösterirler, ancak orijinal teknik özellikleri ayrıntılı ve okunması zor olabilir. Spiff'in sizi W3C dokümanlarına bağlamanın en doğru yolu olduğunu söyleyebilirim.

Masoud'un sağladığı npmjs bağlantılarının çok faydalı olduğunu sanmıyorum. Sizi npmjs kütüphanesindeki bir Javascript kütüphanesine yönlendirir. Blob-util kütüphanesi, tarayıcıda standart API'nin etrafını sarmak için kullanılır, bunlar için kod yazmayı kolaylaştırır, ancak blob URL'lerini ve bunların ne olduğunu anlamak için iyi bir referans değildir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.