0

I have a http request in javascript that returns content of a file in the response. The response.body is in readablestream format. I need to get the file content in base64 format and upload in a different location. Can I know what is the best approach to convert the content to base64 string?

var url="httpurl";
var dataContent= await fetch(url);

var textContent= await dataContent.blob(); 

Next line is to make https call to upload a file with content in base64 string format.

I would like to know how the datacontent can be converted to base64 string.

dataContent is as in below image:

enter image description here

jps
  • 20,041
  • 15
  • 75
  • 79
vanibaaz
  • 11
  • 1
  • 2
  • 1
    Can you post some examples of your code including what you have tried so far to provide a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) – undefined May 18 '22 at 18:19
  • Added some example as requested – vanibaaz May 18 '22 at 19:06

1 Answers1

0

This answer has more info on how to get the response from a ReadableStream. Here's the main part with the base64 conversion included. The base64encode function is based on this

function base64encode(str: string): string {
  return btoa(unescape(encodeURIComponent(str)));
}

fetch('https://jsonplaceholder.typicode.com/posts/1')
  .then(function(response) {
    return response.text();
  }).then(function(data) {
    const base64encodedData = base64encode(data);
    console.log(data); // this will be a string
  });
Joshybull
  • 171
  • 5