Heim > Artikel > Web-Frontend > Wie rufe ich Bilder als Blobs mit der Ajax-Methode von jQuery ab?
Challenge
Das Abrufen von Bildern als Blobs wird von jQuerys Ajax nicht nativ unterstützt Methode, was zu Datentypkonflikten und beschädigten Bildern während führt hochladen.
Lösung: Native XMLHttpRequest
Um ein Bild als Blob abzurufen, verwenden Sie natives XMLHttpRequest:
var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { // this.response contains the blob handler(this.response); } }; xhr.open('GET', 'http://jsfiddle.net/img/logo.png'); xhr.responseType = 'blob'; xhr.send();
jQuery 3.0 Support
Heutzutage ist das möglich Blobs mit jQuery 3.0 abrufen:
jQuery.ajax({ url: 'https://images.unsplash.com/photo-1465101108990-e5eac17cf76d?ixlib=rb-0.3.5&q=85&fm=jpg&crop=entropy&cs=srgb&ixid=eyJhcHBfaWQiOjE0NTg5fQ%3D%3D&s=471ae675a6140db97fea32b55781479e', cache: false, xhr: function() { var xhr = new XMLHttpRequest(); xhr.responseType = 'blob'; return xhr; }, success: function(data) { var img = document.getElementById('img'); var url = window.URL || window.webkitURL; img.src = url.createObjectURL(data); }, error: function() { // Handle error } });
Das obige ist der detaillierte Inhalt vonWie rufe ich Bilder als Blobs mit der Ajax-Methode von jQuery ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!