当前位置:网站首页>Introduction à l'objet blob

Introduction à l'objet blob

2022-07-07 08:06:00 Dieu déchu

Blob L'objet représente une variable、Objet de fichier de classe pour les données brutes.Ses données peuvent être lues en format texte ou binaire,Peut également être converti en ReadableStream Pour les opérations de données.

Regardez le code ci - dessous,Vous pouvez utiliser la construction de texte Blob Objet

var debug = {
    hello: "world"};
var blob = new Blob([JSON.stringify(debug, null, 2)], {
    type : 'application/json'});

Exemple:Utiliser Blob Créer un tableau dactylographié URL

var typedArray = GetTheTypedArraySomehow();
var blob = new Blob([typedArray.buffer], {
    type: 'application/octet-stream'}); // Passer dans un MIME Type
var url = URL.createObjectURL(blob);
// Il en résultera un blob:d3958f5c-0777-0845-9dcf-2cb28783acaf Comme ça. URL String
// Vous pouvez utiliser comme d'habitude URL Utilise - le comme ça.,Comme dans img.src Allez..

Une autre lecture Blob La façon dont le contenu est utilisé est Response Objet.

var text = await (new Response(blob)).text();

À un moment donné, le fichier de téléchargement de fond retourné à l'avant est converti en Blob Objet, Téléchargement normal , Renvoie le bon flux de fichiers ,En cas d'anomalie, L'arrière - plan renvoie une section contenant un message d'erreur json , Vous devez demander à l'utilisateur que le téléchargement a échoué ,Regardez le code ci - dessous

/** * Formatage blob Valeur de retour * @param {*} res */
const formatBlobResponse = async (res) => {
    
  const text = await new Response(res).text();
  let textObj = {
    };
  try {
    
    textObj = JSON.parse(text);
  } catch (e) {
    }

  if (text === '' || (textObj.code && Number(textObj.code) !== 200)) {
    
    return {
    
      success: false,
      msg: textObj.msg || 'Impossible de télécharger le fichier,Veuillez contacter l'Administrateur',
    };
  } else {
    
    return {
    
      success: true,
      data: res,
    };
  }
};
原网站

版权声明
本文为[Dieu déchu]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/188/202207070458351771.html