Giter VIP home page Giter VIP logo

image-upload-api's Introduction

Image Upload API

This project implements a simple Image Upload API with TypeScript, Express, MongoDB, and Multer. The API provides endpoints for uploading images, retrieving images, and handling errors gracefully. Requirements

Node.js (v14 or higher)
MongoDB (Make sure your MongoDB server is running)

Installation

Clone this repository:
git clone <repository-url>

Install dependencies:

cd image-upload-api:
git clone <repository-url>

Set up your environment variables:

Create a .env file in the root directory and add the following:

env

MONGO_URL=<your-mongodb-connection-string>

Start the server:

npm start

The server will be running at http://localhost:5000.

API Endpoints

Upload Image (POST)

Endpoint: /upload

  • Description: Upload an image and get a secure URL format for the saved image.
    • Request: Method: POST Body: Form-data with image field for the image file
    • Response: Status: 200 OK Body: JSON with message and imageUrl

Get Image (GET)

Endpoint: /get_image/:id

  • Description: Retrieve the saved image based on a secure URL format.
    • Request: Method: GET URL Parameter: id (Image ID)
    • Response: Status: 200 OK Body: Image data
    • Error Handling: Status: 404 Not Found if the image with the specified ID is not found.

Validation and Error Handling

Images must be in formats: jpeg, png, or gif.
Proper error messages are provided for invalid requests or server issues.

MongoDB Connection

The API successfully connects to a MongoDB database to store uploaded images.

Contributing

If you would like to contribute to this project, please fork the repository and submit a pull request. License

This project is licensed under the MIT License - see the LICENSE file for details.

image-upload-api's People

Contributors

nickemma avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.