Sample code for 30+ languages & platforms
React Native

REST Download Binary File to Memory

See more REST Examples

Download a binary file to a Chilkat BinData object.

Chilkat React Native Downloads

React Native
import { BinData, Rest, StringBuilder } from '@chilkat/react-native'

async function chilkatExample() {
  // This requires the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  const rest = new Rest();

  // We're going to download a sample MS-Word doc file.
  // The URLs of our MS-Word sample documents are:

  // https://www.chilkatdownload.com/sample_data/sample.doc
  // https://www.chilkatdownload.com/sample_data/sample.docx

  const pathPartOfUrl = '/sample_data/sample.doc';
  const domain = 'chilkatdownload.com';

  const bTls = true;
  const port = 443;
  const bAutoReconnect = true;
  try {
    await rest.connectAsync(domain, port, bTls, bAutoReconnect);
  } catch {
    console.log(rest.lastErrorText);
    return;
  }

  const bd = new BinData();
  try {
    await rest.fullRequestNoBodyBdAsync('GET', pathPartOfUrl, bd);
  } catch {
    console.log(rest.lastErrorText);
    return;
  }

  // A 200 response is expected for actual success.
  // If we don't get a 200 response, then the response body was not actually
  // the file data, but it was text containing error information.
  if (rest.responseStatusCode !== 200) {
    const sbErrorText = new StringBuilder();
    sbErrorText.appendBd(bd, 'utf-8', 0, 0);
    console.log(sbErrorText.getAsString());
    console.log('-- Failed.');
    return;
  }

  // Save to a local file.
  // Change the file path based on your operating system or needs...
  try {
    bd.writeFile('c:/temp/qa_output/sample.doc');
  } catch {
    console.log('Failed to save to local file.');
    return;
  }

  console.log('REST Download of MS-Word File was successful.');
}