Generate Barcode (Node.js) | AWS LambdaByteScout Barcode SDK

Generate Barcode (Node.js) | AWS Lambda

app.js:

JavaScript
var https = require("https");

// The authentication key (API Key).
// Get your own by registering at https://app.pdf.co
const API_KEY = "***********************************";

// Result image file name
const DestinationFile = "./barcode.png";
// Barcode type. See valid barcode types in the documentation https://apidocs.pdf.co
const BarcodeType = "Code128";
// Barcode value
const BarcodeValue = "qweasd123456";

// Prepare request to `Barcode Generator` API endpoint
var queryPath = `/v1/barcode/generate`;

// JSON payload for api request
var jsonPayload = JSON.stringify({
    name: 'barcode.png',
    type: BarcodeType,
    value: BarcodeValue
});

var reqOptions = {
    host: "api.pdf.co",
    path: queryPath,
    method: "POST",
    headers: {
        "x-api-key": API_KEY,
        "Content-Type": "application/json",
        "Content-Length": Buffer.byteLength(jsonPayload, 'utf8')
    }
};


exports.handler = async (event) => {

    let dataString = '';
    const promise_response = await new Promise((resolve, reject) => {

        // Send request
        var postRequest = https.request(reqOptions, (response) => {
            response.on('data', chunk => {
                dataString += chunk;
            });

            response.on('end', () => {
                resolve({
                    statusCode: 200,
                    body: JSON.stringify(JSON.parse(dataString), null, 4)
                });
            });

        }).on("error", (e) => {
            reject({
                statusCode: 500,
                body: 'Something went wrong!'
            });
        });

        // Write request data
        postRequest.write(jsonPayload);
        postRequest.end();
    });

    return promise_response;
};