Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 带Lambda集成的无服务器响应模板_Node.js_Aws Lambda_Aws Api Gateway_Serverless Framework_Aws Serverless - Fatal编程技术网

Node.js 带Lambda集成的无服务器响应模板

Node.js 带Lambda集成的无服务器响应模板,node.js,aws-lambda,aws-api-gateway,serverless-framework,aws-serverless,Node.js,Aws Lambda,Aws Api Gateway,Serverless Framework,Aws Serverless,我已经阅读了serverless和AWS的文档,但没有得到响应模板。我有一个lambda函数,它调用另一个模块,该模块将返回一个带有info和error属性的对象。如果error属性存在,我想抛出一个错误,并用API网关中的响应模板处理它 serverless.yml(不确定400模式中的内容) 兰姆达 const onboard = async (event) => { // returns an object with info/error property const res

我已经阅读了serverless和AWS的文档,但没有得到响应模板。我有一个lambda函数,它调用另一个模块,该模块将返回一个带有
info
error
属性的对象。如果error属性存在,我想抛出一个错误,并用API网关中的响应模板处理它

serverless.yml(不确定
400模式中的内容)

兰姆达

const onboard = async (event) => {
  // returns an object with info/error property
  const response = await someModule();
  /* example response
  const response = {
    error: 'some error',
    name: event.name
  };
  */
  
  if(response.error) {
    context.done(JSON.stringify(response));
  }

  return response;
};

我缺少
statusCodes
属性

functions:
  onboard:
    handler: api/onboard.onboard
    events:
      - http:
          path: /onboard
          method: post
          integration: lambda
          request:
            passThrough: NEVER
            schema:
              application/json: ${file(models/onboard.schema.json)}
            template:
              application/json: $input.body
          response:
            statusCodes:
              200:
                pattern: ''
              400:
                pattern: '.*"error".*'
                template: $input.path('$.errorMessage')
functions:
  onboard:
    handler: api/onboard.onboard
    events:
      - http:
          path: /onboard
          method: post
          integration: lambda
          request:
            passThrough: NEVER
            schema:
              application/json: ${file(models/onboard.schema.json)}
            template:
              application/json: $input.body
          response:
            statusCodes:
              200:
                pattern: ''
              400:
                pattern: '.*"error".*'
                template: $input.path('$.errorMessage')