0.0.2-alpha • Published 4 years ago

@easyapis/easyapis-documentdb v0.0.2-alpha

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

An isomorphic javascript sdk for - DocumentDBConnector

This package contains an isomorphic SDK for DocumentDBConnector.

Currently supported environments

  • Node.js version 6.x.x or higher
  • Browser JavaScript

How to Install

npm install @easyapis/easyapis-documentdb

How to use

nodejs - Authentication, client creation and getDocuments as an example written in TypeScript.

Install @azure/ms-rest-nodeauth
  • Please install minimum version of "@azure/ms-rest-nodeauth": "^3.0.0".
npm install @azure/ms-rest-nodeauth@"^3.0.0"
Sample code
import * as msRest from "@azure/ms-rest-js";
import * as msRestNodeAuth from "@azure/ms-rest-nodeauth";
import { DocumentDBConnector, DocumentDBConnectorModels, DocumentDBConnectorMappers } from "@easyapis/easyapis-documentdb";
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];

msRestNodeAuth.interactiveLogin().then((creds) => {
  const client = new DocumentDBConnector(creds, subscriptionId);
  const databaseId = "testdatabaseId";
  const collectionId = "testcollectionId";
  const xMsDocumentdbRawPartitionkey = "testxMsDocumentdbRawPartitionkey";
  const xMsDocumentdbPartitionkey = "testxMsDocumentdbPartitionkey";
  const xMsMaxItemCount = 1.01;
  const xMsContinuation = "testxMsContinuation";
  const xMsConsistencyLevel = "Strong";
  const xMsSessionToken = "testxMsSessionToken";
  const xMsActivityId = "testxMsActivityId";
  const xMsVersion = "2017-05-03";
  client.getDocuments(databaseId, collectionId, xMsDocumentdbRawPartitionkey, xMsDocumentdbPartitionkey, xMsMaxItemCount, xMsContinuation, xMsConsistencyLevel, xMsSessionToken, xMsActivityId, xMsVersion).then((result) => {
    console.log("The result is:");
    console.log(result);
  });
}).catch((err) => {
  console.error(err);
});

browser - Authentication, client creation and getDocuments as an example written in JavaScript.

Install @azure/ms-rest-browserauth
npm install @azure/ms-rest-browserauth
Sample code

See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.

  • index.html
<!DOCTYPE html>
<html lang="en">
  <head>
    <title>@easyapis/easyapis-documentdb sample</title>
    <script src="node_modules/@azure/ms-rest-js/dist/msRest.browser.js"></script>
    <script src="node_modules/@azure/ms-rest-browserauth/dist/msAuth.js"></script>
    <script src="node_modules/@easyapis/easyapis-documentdb/dist/easyapis-documentdb.js"></script>
    <script type="text/javascript">
      const subscriptionId = "<Subscription_Id>";
      const authManager = new msAuth.AuthManager({
        clientId: "<client id for your Azure AD app>",
        tenant: "<optional tenant for your organization>"
      });
      authManager.finalizeLogin().then((res) => {
        if (!res.isLoggedIn) {
          // may cause redirects
          authManager.login();
        }
        const client = new Easyapis.EasyapisDocumentdb.DocumentDBConnector(res.creds, subscriptionId);
        const databaseId = "testdatabaseId";
        const collectionId = "testcollectionId";
        const xMsDocumentdbRawPartitionkey = "testxMsDocumentdbRawPartitionkey";
        const xMsDocumentdbPartitionkey = "testxMsDocumentdbPartitionkey";
        const xMsMaxItemCount = 1.01;
        const xMsContinuation = "testxMsContinuation";
        const xMsConsistencyLevel = "Strong";
        const xMsSessionToken = "testxMsSessionToken";
        const xMsActivityId = "testxMsActivityId";
        const xMsVersion = "2017-05-03";
        client.getDocuments(databaseId, collectionId, xMsDocumentdbRawPartitionkey, xMsDocumentdbPartitionkey, xMsMaxItemCount, xMsContinuation, xMsConsistencyLevel, xMsSessionToken, xMsActivityId, xMsVersion).then((result) => {
          console.log("The result is:");
          console.log(result);
        }).catch((err) => {
          console.log("An error occurred:");
          console.error(err);
        });
      });
    </script>
  </head>
  <body></body>
</html>

Related projects

Impressions