Runtime.ImportModuleError Ошибка: не удается найти модуль 'axios / lib / utils' без сервера - PullRequest
0 голосов
/ 29 апреля 2020

Я использую Serverless Framework. Бэкэнд как node.js. У меня есть несколько микросервисов, и все остальные работают нормально, но теперь я создал микросервис, в котором я не использовал Axios, но все равно он выдает ошибку в консоли. Еще одна проблема заключается в том, что в моей локальной системе она работает отлично, но, когда я помещаю то же самое на сервер, он начинает создавать проблемы. project directory image

Это пример кода, который выдает ошибку

    const { IamAuthenticator } = require('ibm-watson/auth');
    const NaturalLanguageUnderstandingV1 = require('ibm-watson/natural-language-understanding/v1');

    async function textAnalyse(req, res) {
      const naturalLanguageUnderstanding = new NaturalLanguageUnderstandingV1({
      version: '2019-07-12',
      authenticator: new IamAuthenticator({
        apikey: 'API KEY'
      }),
    url: 'https://URL/natural-language-understanding/api'
    });

    const analyzeParams = {
       'text': HtmlToText.fromString('Test text here'),
       'features': {
         'entities': {
           'sentiment': true,
           'limit': 100
          }
        }
    };

    const analysis = await naturalLanguageUnderstanding.analyze(analyzeParams);

    // prepare the response object
    res.send({ analysis: analysis });
  }

Ошибка в AWS Наблюдение за облаками { "errorType": "Runtime.ImportModuleError", "errorMessage": "Error: Cannot find module 'axios/lib/utils'", "stack": [ "Runtime.ImportModuleError: Error: Cannot find module 'axios/lib/utils'", " at _loadUserApp (/var/runtime/UserFunction.js:100:13)", " at Object.module.exports.load (/var/runtime/UserFunction.js:140:17)", " at Object.<anonymous> (/var/runtime/index.js:45:30)", " at Module._compile (internal/modules/cjs/loader.js:778:30)", " at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)", " at Module.load (internal/modules/cjs/loader.js:653:32)", " at tryModuleLoad (internal/modules/cjs/loader.js:593:12)", " at Function.Module._load (internal/modules/cjs/loader.js:585:3)", " at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)", " at startup (internal/bootstrap/node.js:283:19)", " at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)" ] }

1 Ответ

0 голосов
/ 29 апреля 2020

ibm-watson sdk зависит от ax ios, как вы можете видеть здесь в теге зависимостей . Проверьте в папке node_modules, если она у вас есть. Кроме того, на всякий случай вы должны установить его, используя команду npm i axios, а затем pu sh в lambda (вы также можете попытаться загрузить свой код в виде почтового индекса, если хотите).

...