web-dev-qa-db-fra.com

Comment puis-je utiliser la gestion des packages dans NodeJS Azure Functions?

J'essaie de créer cet exemple de projet en tant que fonction Azure et cela nécessite des packages https://github.com/OfficeDev/O365-Nodejs-Microsoft-Graph-App-only

Je peux voir que je peux utiliser la gestion des paquets dans les fonctions NodeJS Azure en utilisant https://Azure.Microsoft.com/en-us/documentation/articles/functions-reference/#nodejavascript-api

J'ai essayé de l'utiliser

var request = require('request');

Cette déclaration

You can include packages in your function directory (i.e. via npm install) and then import them to your function in the usual ways (i.e. via require('packagename'))

J'ai donc créé un project.json avec cela comme la fonction Azure C # utilise:

{
  "frameworks": {
    "net46":{
      "dependencies": {
        "chalk": "^1.1.1",
        "q": "^1.4.1",
        "request": "^2.67.0"
      }
    }
  }
}

et obtenez cette erreur

2016-04-06T19:49:42.026 Exception while executing function: Functions.MicrosoftGraphWebHookNode. mscorlib: One or more errors occurred. Error: Cannot find module 'request'
    at Function.Module._resolveFilename (module.js:339:15)
    at Function.Module._load (module.js:290:25)
    at Module.require (module.js:367:17)
    at require (internal/module.js:16:19)
    at Object.<anonymous> (D:\home\site\wwwroot\MicrosoftGraphWebHookNode\index.js:1:77)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17).

Le project.json devrait-il fonctionner?

19

Vous pouvez inclure votre package.json dans votre répertoire de fonctions et exécutez npm install comme vous le feriez normalement avec des projets Node.js utilisant Kudu ou la console dans le portail Azure.

Plus d'informations peuvent être trouvées ici: https://Azure.Microsoft.com/en-us/documentation/articles/functions-reference/#node-version-amp-package-management

28
Fabio Cavalcante