Skip to content

georjino/react-native-azure-cosmos-epg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

react-native-azure-cosmos-epg

This package provide query and insert against azure cosmos db

Install

npm i react-native-azure-cosmos-epg --save

Usage

Import library

import { azurefetch, initAzureCosmos } from 'react-native-azure-cosmos-epg/azurecosmos'

Init Cosmos Authentication

Using Master Key

class App extends React.Component {
  constructor(props) {
    super(props);
    initAzureCosmos(
    {
      masterKey:${YOUR COSMOS DB MASTER KEY},
      version: "2018-12-31",
      dbUri: ${YOUR COSMOS DB URL},
      dbname: ${YOUR COSMOS DB NAME},

    }
    ...
  }

Using Resource Tokens

class App extends React.Component {
  constructor(props) {
    super(props);
    initAzureCosmos(
    {
      masterKey:'',
      version: "2018-12-31",
      dbUri: ${YOUR COSMOS DB URL},
      dbname: ${YOUR COSMOS DB NAME},
      resourcesTokens: ${USER RESOURCE TOKENS FROM BROKER SERVICE}
    }
    ...
  }

Broker should append the collection (container) name to the resource token ID, example for a collection called 'Countries':

 ...
 "id": "SOMEIDHERE_Countries",
 ...

Notice the underscore.

Run a Query

azure = async () => {
   const response = await azurefetch({
            dbname : "", //optional parameter if you want to quiry agiants another DB
            col: ${COL NAME},
            body: {
                "query": "SELECT c.id FROM ${COL NAME} c WHERE c.uid = @email",
                "parameters": [
                    { "name": "@email", "value": email }
                ]
            },
            type: 'Query',
            partitionKey: ${PARTITION VALUE}
        });

  }

Insert New Documents

azure = async () => {
    const response = await azurefetch({
              col: ${COL NAME},
              body: {
                  "id": username,
                  "code": code,
                  "name": name,
                  "photoUri": photoURL,
              },
              type: 'Insert',
              partitionKey:  ${PARTITION VALUE}
          });

Execute Stored Procedure

azure = async () => {
   const response = await azurefetch({
        spname: ${SP NAME},
        col: ${COL NAME},
        body: [id, { "photoUri": photoURL }],
        type: 'Sp',
        partitionKey: code
    });

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •