Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.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
Javascript 神秘的;A不是一个函数;将Lambda函数用于带有Vue&;的Netlify时出错;快速应用_Javascript_Express_Vue.js_Aws Lambda_Netlify - Fatal编程技术网

Javascript 神秘的;A不是一个函数;将Lambda函数用于带有Vue&;的Netlify时出错;快速应用

Javascript 神秘的;A不是一个函数;将Lambda函数用于带有Vue&;的Netlify时出错;快速应用,javascript,express,vue.js,aws-lambda,netlify,Javascript,Express,Vue.js,Aws Lambda,Netlify,我正在用Vue构建一个web应用程序,它将使用Netlify Lambda函数和Express.js作为服务器端(使应用程序“无服务器”)。Netlify现在可以做到这一点,我遵循他们的官方指南:。我还使用将lambda函数集成到我的Vue构建过程中 我有一个小lambda函数,名为server.js。调用此函数时,它将从Spotify API获取数据 'use strict'; const serverless = require("serverless-http"); const Spo

我正在用Vue构建一个web应用程序,它将使用Netlify Lambda函数和Express.js作为服务器端(使应用程序“无服务器”)。Netlify现在可以做到这一点,我遵循他们的官方指南:。我还使用将lambda函数集成到我的Vue构建过程中

我有一个小lambda函数,名为
server.js
。调用此函数时,它将从Spotify API获取数据

'use strict'; 

const serverless = require("serverless-http");
const SpotifyWebApi = require("spotify-web-api-node");
const express = require("express");
const app = express();
const bodyParser = require("body-parser");

const router = express.Router();

router.get("/search", (req, res) => {
    // function that searches for a song with the Spotify API
});

app.use(bodyParser.json());
app.use('/.netlify/functions/server', router);  // path must route to lambda

module.exports = app;
module.exports.handler = serverless(app);
这应该可以工作-它遵循中的
server.js
文件中的模式。我创建了一个Express应用程序,将名为
search
GET
端点添加到Express API,然后将Express应用程序导出为Netlify Lambda函数的处理程序

然而,每当我导航到Lambda函数的url时,我总是会遇到这个神秘而模糊的错误:
TypeError:a不是函数。我已经研究了这个错误,并尝试了一系列的修补程序和解决方法,但他们并没有解决这个问题。以下是完整的堆栈跟踪:

{“errorMessage”:“a不是函数”、“errorType”:“TypeError”、“stackTrace”:[“i(/var/task/server.js:1:220)”、“对象”

另外,这是我的Netlify站点上的
server.js
Lambda函数的URL:


我的Lambda函数设置不正确吗?

查看“堆栈跟踪”将非常有用"对于该错误。由于您包含的代码中没有
a
函数,因此错误显然发生在另一个函数的某个位置,错误的堆栈跟踪可以帮助您准确定位该位置。这就是问题所在:堆栈跟踪几乎无法读取。请参见上面的答案,我添加了它。或者导航到ur我想,根据第314行第13004列的情况,server.js是一种缩小的/网页包文件。或者你必须查看你的网页包文件中提到的位置,看看那里发生了什么,或者你可以在lambda中使用未统一的代码,或者看看是否是您可以在lambda上使用源映射从未使用过它,只需在谷歌上搜索aws lambda节点源映射即可。