From 83dbe121bedc2cee61e76b76ca1c28764f071a65 Mon Sep 17 00:00:00 2001 From: "Begerad, Stefan" Date: Tue, 17 May 2022 13:21:07 +0200 Subject: [PATCH] feat(http-get): initial commit --- README.md | 10 +++++++++- http-get/.env | 6 ++++++ http-get/README.md | 29 +++++++++++++++++++++++++++++ http-get/index.js | 24 ++++++++++++++++++++++++ http-get/package.json | 23 +++++++++++++++++++++++ 5 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 http-get/.env create mode 100644 http-get/README.md create mode 100644 http-get/index.js create mode 100644 http-get/package.json diff --git a/README.md b/README.md index 444f5b5..f1acfcf 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,10 @@ -# Overview +# sandbox-nade + +## Table of Contents +0. [General](#General) + +# General This is the sandbox for projects using node.js. + +* [dload-file-inbuild-packages](./dload-file-inbuild-packages) +* [http-get](./http-get) diff --git a/http-get/.env b/http-get/.env new file mode 100644 index 0000000..95c33c1 --- /dev/null +++ b/http-get/.env @@ -0,0 +1,6 @@ +#ADDR='https://jsonplaceholder.typicode.com/users?_limit=2' +#ADDR='https://192.168.22.14:65534/agency-all' +#ADDR='https://dede-display.vbn.de:42001/ivu-loc' +#ADDR='https://soll.vbn.de:65534/stops-all' +#ADDR='http://soll.vbn.de/gtfs/frequencies-all' +ADDR=http://localhost:65534/agency-all \ No newline at end of file diff --git a/http-get/README.md b/http-get/README.md new file mode 100644 index 0000000..b14ce2a --- /dev/null +++ b/http-get/README.md @@ -0,0 +1,29 @@ +# HTTP Client in Node.js + +## Table of Contents +0. [General](#General) +1. [Quick Start Guide](#Quick-Start-Guide) +4. [Links](#Links) + +# General + +TODO + +# Quick Start Guide + +## Preparation + +* run the following instruction to install dependenies. +``` +npm i +``` + +## Development setup + +* run the following instruction to start the service in development mode +``` +DEBUG=http-get npm run dev +``` +# Links + +[HTTP Client in Node.js – How to create with Core HTTP](https://bobcares.com/blog/http-client-in-node-js/) \ No newline at end of file diff --git a/http-get/index.js b/http-get/index.js new file mode 100644 index 0000000..64dd814 --- /dev/null +++ b/http-get/index.js @@ -0,0 +1,24 @@ +const http = require('http'); +require('dotenv').config(); +const DEBUG=require('debug')('http-get'); + +const ADDR=process.env.ADDR; +DEBUG('ADDR: '+ADDR); +let request = http.get(ADDR, (res) => { + if (res.statusCode !== 200) { + console.error(`Did not get an OK from the server. Code: ${res.statusCode}`); + res.resume(); + return; + } + + let data = ''; + + res.on('data', (chunk) => { + data += chunk; + }); + + res.on('close', () => { + console.log('Retrieved all data'); + console.log(JSON.parse(data)); + }); +}); diff --git a/http-get/package.json b/http-get/package.json new file mode 100644 index 0000000..386b49f --- /dev/null +++ b/http-get/package.json @@ -0,0 +1,23 @@ +{ + "private": true, + "name": "http-get", + "description": "HTTP GET request", + "version": "0.0.1", + "main": "index.js", + "author": "Software Ingenieur Begerad ", + "license": "GPL-3.0-or-later", + "engines": { + "node": ">=10" + }, + "scripts": { + "dev": "nodemon index.js", + "test": "echo \"Error: no test specified\" && exit 1" + }, + "dependencies": { + "debug": "^4.3.4", + "dotenv": "^16.0.0" + }, + "devDependencies": { + "nodemon": "^2.0.16" + } +}