Giter Site home page Giter Site logo

prantlf / connect-block-favicon Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 234 KB

Middleware for Connect or Express to silence browser requests for favicon.ico with no content.

License: MIT License

JavaScript 100.00%
connect express middleware favicon ico block polka

connect-block-favicon's Introduction

connect-block-favicon

Latest version Dependency status Test coverage

Middleware for Connect, Express or Polka to silence browser requests for favicon.ico with no content. Useful when serving web project files from a local web server for development or test automation purposes.

  • No need for storing a favicon.ico file in the root of your project.
  • Any server supporting middleware supported.
  • No other dependencies.

If you develop or test a web application and your console is polluted by the following message, when the browser tries accessing /favicon.ico, using this middleware will help you to get rid of it:

Failed to load resource: the server responded with a status of 404 (Not Found)

Table of Contents

Synopsis

const connect = require('connect')
const blockFavicon = require('connect-block-favicon')
const serveStatic = require('serve-static')

connect()
  .use(blockFavicon())
  .use(serveStatic('.', { etag: false }))
  .on('error', err => console.error(err))
  .listen(9876, () => console.log('Serving on the port', 9876))

Installation

This module can be installed in your project using NPM, PNPM or Yarn. Make sure, that you use Node.js version 6 or newer.

npm i connect-block-favicon
pnpm i connect-block-favicon
yarn add connect-block-favicon

Getting Started

The main module exports a factory, which returns a request handler. The request handler is a middleware (plugin function) compatible with both Connect, Express or Polka HTTP server frameworks. The factory is function returning the request handler.

const connect = require('connect')
// Load the block-favicon middleware factory.
const blockFavicon = require('connect-block-favicon')

const app = connect()
// Create a block-favicon middleware and pass it to the application server.
app.use(blockFavicon())

The request handler intercepts requests to /favicon.ico and "satisfies" them by serving no content (HTTP status 204) and a request to cache the response for one year.

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code.

License

Copyright (c) 2019-2022 Ferdinand Prantl

Licensed under the MIT license.

connect-block-favicon's People

Contributors

prantlf avatar semantic-release-bot avatar

Stargazers

 avatar

Watchers

 avatar  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.