An open API service indexing awesome lists of open source software.

https://github.com/theinfinity007/url-shortner

A URL Shortner microservice project using the node.js and mongodb database. Just post a url and you will get a shorturl.
https://github.com/theinfinity007/url-shortner

express-js mongodb mongoose-js node-js

Last synced: 4 months ago
JSON representation

A URL Shortner microservice project using the node.js and mongodb database. Just post a url and you will get a shorturl.

Awesome Lists containing this project

README

          

# API Project: URL Shortener Microservice for freeCodeCamp

[![Run on Repl.it](https://repl.it/badge/github/freeCodeCamp/boilerplate-project-urlshortener)](https://repl.it/github/freeCodeCamp/boilerplate-project-urlshortener)

### User Stories

1. I can POST a URL to `[project_url]/api/shorturl/new` and I will receive a shortened URL in the JSON response. Example : `{"original_url":"www.google.com","short_url":1}`
2. If I pass an invalid URL that doesn't follow the valid `http(s)://www.example.com(/more/routes)` format, the JSON response will contain an error like `{"error":"invalid URL"}`. *HINT*: to be sure that the submitted url points to a valid site you can use the function `dns.lookup(host, cb)` from the `dns` core module.
3. When I visit the shortened URL, it will redirect me to my original link.

#### Creation Example:

POST [project_url]/api/shorturl/new - body (urlencoded) : url=https://www.google.com

#### Usage:

[this_project_url]/api/shorturl/2

#### Will redirect to:

https://www.freecodecamp.org