Unable to start google cloud function on local server using terminal VisualStudio
I'm trying to develop my first Google Cloud Function but want to build and test locally.I haven't done this before, I'm just learning, so please bear with me.
First-I created my moralisaccount
directory,npm init
uses default configurationcreates a package.json, and functional framework installednpm install @google-cloud/functions-framework
AMAC02CLCBTLEE:moralisaccount youthdev$ nvm use node
Now using node v17.3.0 (npm v8.3.0)
AMAC02CLCBTLEE:moralisaccount youthdev$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help init` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
package name: (moralisaccount)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)
About to write to/Users/youthdev/MoralisAccount/package.json:
{
"name": "moralisaccount",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
Is this OK? (yes)
AMAC02CLCBTLEE:moralisaccount youthdev$ npm install @google-cloud/functions-framework
added 103 packages, and audited 104 packages in 4s
8 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
AMAC02CLCBTLEE:moralisaccount youthdev$
Second-create a simple index.js file with a simple function in the same moralisaccount directory as package.json
/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/
exports.moralisAccount=async (req, res)=> {
let message=req.query.message || req.body.message || 'Hello World!';
res.status(200).send(message);
};
last-I ran the following command in Visual Studio's terminal, but I didn't get the expected response in the terminal.
actual
Node.js v17.3.0
youthdev@AMAC02CLCBTLEE moralisaccount % node node_modules/@google-cloud/functions-framework--target=moralisAccount
youthdev@AMAC02CLCBTLEE moralisaccount %
Expected:
Node.js v17.3.0
youthdev@AMAC02CLCBTLEE moralisaccount % node node_modules/@google-cloud/functions-framework--target=moralisAccount
Serving function...
Function: moralisAccount
URL: http://localhost:8080/
As I'm a beginner, not sure where I messed up.Thanks for your help!
uj5u.com enthusiastic netizens replied:
Try following the steps using the link below, it works great.
https://github.com/GoogleCloudPlatform/functions-framework-nodejs
in your scene, instead of runningnode node_modules/@google-cloud/functions-framework--target=moralisAccount
try runningnpx @google-cloud/functions-framework--target=moralisAccount
Example output:
o@cloudshell:~/myapp/routes $ npx @google-cloud/functions-framework--target=helloWorld
Serving function...
Function: helloWorld
Signature type: http
URL: http://localhost:8080/
Make sure that in your index.js
in the directoryRun this command.
0 Comments