Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

npm (scoped) npm bundle size GitHub license GitHub last commit

HTML Rendering & Conversion Node.js Cloud REST API

Aspose.HTML Cloud for Node.js is a programming SDK that allows software developers to manipulate and convert HTML documents from within their own applications. A Wrapper of RESTful APIs, Aspose.HTML Cloud for Node.js speeds up HTML programming and conversion. This cloud SDK assists to develop cloud-based HTML page rendering, processing, translation & conversion apps in Node.js via REST API.

HTML Processing Features

  • Fetch the HTML page along with its resources as a ZIP archive by providing the page URL.
  • Based on page URL, retrieve all images of an HTML page as a ZIP package.
  • Load data from a local file to populate the HTML document template.
  • Use the request body to populate the HTML document template.
  • Convert HTML page to numerous other file formats.

Read & Write HTML Formats

HTML, XHTML, zipped HTML, zipped XHTML, MHTML, HTML containing SVG markup, Markdown, JSON

Save HTML As

Fixed Layout: PDF, XPS Images: TIFF, JPEG, PNG, BMP, GIF Other: TXT, ZIP (images)

Read HTML Formats

eBook: EPUB Other: XML, SVG

Enhancements Version 20.11

  • New generation of Aspose.HTML Cloud SDK for .NET (C#) is provided.
  • This version of SDK has been redesigned from scratch being based on the new Aspose.HTML Cloud REST API (v3.0).
  • Currently, it provides only the conversion feature. Other features that are still available in the versions up to v.20.08 are planned to be implemented in this SDK later.
  • Conversion interface provides a more flexible conversion parameters setup.
  • Redesigned storage access is provided using SDK entry point HtmlApi.Storage.
  • Availability of synchronous and asynchronous file upload and download methods.
  • Asynchronous download provides the ability to get progress data for the longer downloads.

Installation

Aspose.HTML Cloud SDK for Node.js

This repository contains Aspose.HTML Cloud SDK for Node.js source code. This SDK allows you to work with Aspose.HTML Cloud REST APIs in your Node.js applications quickly and easily.

See API Reference for full API specification.

How to use the SDK?

The complete source code is available in this repository folder, you can either directly use it in your project via npm package manager.

Prerequisites

To use Aspose HTML for Cloud Node.js SDK you need to register an account with Aspose Cloud and lookup/create App Key and SID at Cloud Dashboard. There is a free quota available. For more details, see Aspose Cloud Pricing.

Installation

Install Aspose.HTML Cloud

For Node.js

npm

npm install @asposecloud/aspose-html-cloud --save

git

Install it via:

    npm install https://github.com/aspose-html-cloud/aspose-html-cloud-nodejs --save

Getting Started

  1. Sign Up. Before you begin, you need to sign up for an account on our Dashboard and retrieve your credentials.
  2. Minimum requirements. This SDK requires Node.js 6.x and higher.
  3. Install Aspose.Html Cloud Node.js SDK.

Please, add the following nmp package to your project.json as a dependency.

{
  "dependencies": {
    "@asposecloud/aspose-html-cloud":"^20.8.1"
  }
}

Please follow the installation instruction and execute the following JS code:

NOTE: Use the helper from /test/helper.js for an upload and save data.

    // Get keys from aspose site.
    // There is free quota available.
    // For more details, see https://purchase.aspose.cloud/pricing

var conf = {
    "basePath":"https://api.aspose.cloud/v3.0",
    "authPath":"https://api.aspose.cloud/connect/token",
    "apiKey":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "appSID":"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
    "testResult":"/testresult/",
    "testData":"/testdata/",
    "remoteFolder":"HtmlTestDoc",
    "defaultUserAgent":"Webkit"
};

//Create storage api for upload to server
var api = require('@asposecloud/aspose-html-cloud');
var fs = require('fs');
var storageApi = new api.StorageApi(conf);


// Setup local folder for source and result
var local_dst_folder = __dirname + "/../"+ conf['testResult'];
var local_src_folder = __dirname + "/../"+ conf['testData'];

// Create Conversion Api object
var conversionApi = new api.ConversionApi(conf);


var filename = "test_data.html"; // {String} Document name.

// Get upload folder from config (or write manually)
var folder = conf['remoteFolder'];
var versionId = null;
var storage=null;

var file = local_src_folder + "/" + filename;

//Upload file to storage
var opts = {versionId:versionId, storage:null};

storageApi.uploadFile(folder + "/" + filename, file, opts, callback);

//Setup output format
var outFormat = "png"; // {String} Resulting image format.

//Setup various option for result image
var opts = {
  'width': 800, // {Number} Resulting image width.
  'height': 1000, // {Number} Resulting image height.
  'leftMargin': 10, // {Number} Left resulting image margin.
  'rightMargin': 10, // {Number} Right resulting image margin.
  'topMargin': 20, // {Number} Top resulting image margin.
  'bottomMargin': 20, // {Number} Bottom resulting image margin.
  'resolution': 300, // {Number} Resolution of resulting image.
  'folder': folder, // {String} The source document folder.
  'storage': storage // {String} The source document storage.
};

var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    var dst = local_dst_folder + "/" + "ResultConvertToPng.zip";
    var fd = fs.openSync(dst, 'w');
    var len = fs.writeSync(fd, data);
  }
};
conversionApi.GetConvertDocumentToImage(filename, outFormat, opts, callback);
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

Finally, switch to the directory you want to use your package from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

You should now be able to require('@asposecloud/aspose-html-cloud') in javascript files from the directory you ran the last command above from.

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file, that's to say your javascript file where you actually use this library):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Sample usage

Before fill all fields in configuration object (see tests)

Example:

var conf = {
    "basePath":"https://api.aspose.cloud/v3.0",
    "authPath":"https://api.aspose.cloud/connect/token",
    "apiKey":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "appSID":"XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
    "testResult":"/testresult/",
    "testData":"/testdata/",
    "remoteFolder":"HtmlTestDoc",
    "defaultUserAgent":"Webkit"
}

Documentation for API Endpoints

All URIs are relative to https://api.aspose.cloud/v3.0

Tests contain various examples of using the Aspose.HTML SDK.

HTML API

  • For conversion to images allowed formats is jpeg, png, bmp, tiff, gif. Input formats are html, epub, svg.
Class Method HTTP request Description
Asposehtmlcloud.ConversionApi GetConvertDocumentToImage GET /html/{name}/convert/image/{outFormat} Convert the HTML document from the storage by its name to the specified image format.
Asposehtmlcloud.ConversionApi GetConvertDocumentToImageByUrl GET /html/convert/image/{outFormat} Convert the HTML page from the web by its URL to the specified image format.
Asposehtmlcloud.ConversionApi GetConvertDocumentToPdf GET /html/{name}/convert/pdf Convert the HTML document from the storage by its name to PDF.
Asposehtmlcloud.ConversionApi GetConvertDocumentToPdfByUrl GET /html/convert/pdf Convert the HTML page from the web by its URL to PDF.
Asposehtmlcloud.ConversionApi GetConvertDocumentToXps GET /html/{name}/convert/xps Convert the HTML document from the storage by its name to XPS.
Asposehtmlcloud.ConversionApi GetConvertDocumentToXpsByUrl GET /html/convert/xps Convert the HTML page from the web by its URL to XPS.
Asposehtmlcloud.ConversionApi PostConvertDocumentInRequestToImage POST /html/convert/image/{outFormat} Converts the HTML document (in request content) to the specified image format and uploads resulting file to storage.
Asposehtmlcloud.ConversionApi PostConvertDocumentInRequestToPdf POST /html/convert/pdf Converts the HTML document (in request content) to PDF and uploads resulting file to storage.
Asposehtmlcloud.ConversionApi PostConvertDocumentInRequestToXps POST /html/convert/xps Converts the HTML document (in request content) to XPS and uploads resulting file to storage.
Asposehtmlcloud.ConversionApi PutConvertDocumentToImage PUT /html/{name}/convert/image/{outFormat} Converts the HTML document (located on storage) to the specified image format and uploads resulting file to storage.
Asposehtmlcloud.ConversionApi PutConvertDocumentToPdf PUT /html/{name}/convert/pdf Converts the HTML document (located on storage) to PDF and uploads resulting file to storage.
Asposehtmlcloud.ConversionApi PutConvertDocumentToXps PUT /html/{name}/convert/xps Converts the HTML document (located on storage) to XPS and uploads resulting file to storage.
Asposehtmlcloud.ConversionApi GetConvertDocumentToMHTMLByUrl GET /html/convert/mhtml Converts the HTML page from Web by its URL to MHTML returns resulting file in response content.
Asposehtmlcloud.ConversionApi GetConvertDocumentToMarkdown GET /html/{name}/convert/md Converts the HTML document (located on storage) to Markdown and returns resulting file in response content.
Asposehtmlcloud.ConversionApi PostConvertDocumentInRequestToMarkdown POST /html/convert/md Converts the HTML document (in request content) to Markdown and uploads resulting file to storage by specified path.
Asposehtmlcloud.ConversionApi PutConvertDocumentToMarkdown PUT /html/{name}/convert/md Converts the HTML document (located on storage) to Markdown and uploads resulting file to storage by specified path.
Asposehtmlcloud.ImportApi GetConvertMarkdownToHtml GET /html/{name}/import/md Converts the Markdown document (located on storage) to HTML and returns resulting file in response content.
Asposehtmlcloud.ImportApi PostConvertMarkdownInRequestToHtml POST /html/import/md Converts the Markdown document (in request content) to HTML and uploads resulting file to storage by specified path.
Asposehtmlcloud.ImportApi PutConvertMarkdownToHtml PUT /html/{name}/import/md Converts the Markdown document (located on storage) to HTML and uploads resulting file to storage by specified path.
Asposehtmlcloud.DocumentApi GetDocumentByUrl GET /html/download Return all HTML page with linked resources packaged as a ZIP archive by the source page URL.
Asposehtmlcloud.DocumentApi GetDocumentFragmentByXPath GET /html/{name}/fragments/{outFormat} Return list of HTML fragments matching the specified XPath query.
Asposehtmlcloud.DocumentApi GetDocumentFragmentByXPathByUrl GET /html/fragments/{outFormat} Return list of HTML fragments matching the specified XPath query by the source page URL.
Asposehtmlcloud.DocumentApi GetDocumentFragmentsByCSSSelector GET /html/{name}/fragments/css/{outFormat} Return list of HTML fragments matching the specified CSS selector.
Asposehtmlcloud.DocumentApi GetDocumentFragmentsByCSSSelectorByUrl GET /html/fragments/css/{outFormat} Return list of HTML fragments matching the specified CSS selector by the source page URL.
Asposehtmlcloud.DocumentApi GetDocumentImages GET /html/{name}/images/all Return all HTML document images packaged as a ZIP archive.
Asposehtmlcloud.DocumentApi GetDocumentImagesByUrl GET /html/images/all Return all HTML page images packaged as a ZIP archive by the source page URL.
Asposehtmlcloud.TemplateMergeApi GetMergeHtmlTemplate GET /html/{templateName}/merge Populate HTML document template with data located as a file in the storage.
Asposehtmlcloud.TemplateMergeApi PostMergeHtmlTemplate POST /html/{templateName}/merge Populate HTML document template with data from the request body. Result document will be saved to storage.
Asposehtmlcloud.SeoApi GetSeoWarning GET /html/seo Page analysis and return SEO warnings in json format.
Asposehtmlcloud.SeoApi GetHtmlWarning GET /html/validator Checks the markup validity of Web documents in HTML, XHTML, etc.and return in json format.

STORAGE API

Class Method HTTP request Description
Asposehtmlcloud.StorageApi copyFile PUT /html/storage/file/copy/{srcPath} Copy file
Asposehtmlcloud.StorageApi deleteFile DELETE /html/storage/file/{path} Delete file
Asposehtmlcloud.StorageApi downloadFile GET /html/storage/file/{path} Download file
Asposehtmlcloud.StorageApi moveFile PUT /html/storage/file/move/{srcPath} Move file
Asposehtmlcloud.StorageApi uploadFile PUT /html/storage/file/{path} Upload file
Asposehtmlcloud.StorageApi copyFolder PUT /html/storage/folder/copy/{srcPath} Copy folder
Asposehtmlcloud.StorageApi createFolder PUT /html/storage/folder/{path} Create the folder
Asposehtmlcloud.StorageApi deleteFolder DELETE /html/storage/folder/{path} Delete folder
Asposehtmlcloud.StorageApi getFilesList GET /html/storage/folder/{path} Get all files and folders within a folder
Asposehtmlcloud.StorageApi moveFolder PUT /html/storage/folder/move/{srcPath} Move folder
Asposehtmlcloud.StorageApi getDiscUsage GET /html/storage/disc Get disc usage
Asposehtmlcloud.StorageApi getFileVersions GET /html/storage/version/{path} Get file versions
Asposehtmlcloud.StorageApi objectExists GET /html/storage/exist/{path} Check if file or folder exists
Asposehtmlcloud.StorageApi storageExists GET /html/storage/{storageName}/exist Check if storage exists

Documentation for Models

Run tests

node.exe ./node_modules/mocha/bin/_mocha --ui bdd ./test

Aspose.HTML Cloud SDKs in Popular Languages

.NET Java PHP Python Ruby Node.js Android Swift C++ Go
GitHub GitHub GitHub GitHub GitHub GitHub GitHub GitHub GitHub GitHub
NuGet Maven Composer PIP GEM NPM Maven Cocoapods NuGet Go.Dev

Product Page | Documentation | API Reference | Code Samples | Blog | Free Support | Free Trial

About

JavaScript library for communicating with the Aspose.HTML Cloud API

Resources

License

Packages

No packages published
You can’t perform that action at this time.