Node.js: terminate HTTP connection
Stay organized with collections
Save and categorize content based on your preferences.
Show how to terminate an HTTP connection in Node.js
Explore further
For detailed documentation that includes this code sample, see the following:
Code sample
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],[],[[["\u003cp\u003eNode.js HTTP functions should signal termination by returning an HTTP response, ensuring all background tasks are complete before sending.\u003c/p\u003e\n"],["\u003cp\u003eSending an HTTP response should be done using \u003ccode\u003eres.send()\u003c/code\u003e and \u003ccode\u003eres.end()\u003c/code\u003e, and not by returning a promise.\u003c/p\u003e\n"],["\u003cp\u003eAuthenticating to Cloud Run functions requires setting up Application Default Credentials, as detailed in the documentation.\u003c/p\u003e\n"],["\u003cp\u003eFor additional Node.js documentation, refer to the provided links about the Node.js Runtime in the documentation.\u003c/p\u003e\n"]]],[],null,["# Node.js: terminate HTTP connection\n\nShow how to terminate an HTTP connection in Node.js\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [The Node.js Runtime](/functions/1stgendocs/concepts/nodejs-runtime)\n- [The Node.js runtime](/run/docs/runtimes/nodejs)\n\nCode sample\n-----------\n\n### Node.js\n\n\nTo authenticate to Cloud Run functions, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n // OK: await-ing a Promise before sending an HTTP response\n await Promise.resolve();\n\n // WRONG: HTTP functions should send an\n // HTTP response instead of returning.\n return Promise.resolve();\n\n // HTTP functions should signal termination by returning an HTTP response.\n // This should not be done until all background tasks are complete.\n res.send(200);\n res.end();\n\n // WRONG: this may not execute since an\n // HTTP response has already been sent.\n return Promise.resolve();\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=functions)."]]