shelf_enforces_ssl 1.2.1

SDKdartflutter
Platformandroidioswindowslinuxmacosweb

Enforces that users can only make API requests over HTTPS (SSL).

Shelf Enforces SSL

Ensures that only API Requests with a HTTPS connection are accepted. Inspired by https://github.com/hengkiardo/express-enforces-ssl

Installing

dart pub add shelf_enforces_ssl

Usage

As shelf middleware

import 'package:shelf_enforces_ssl/shelf_enforces_ssl.dart';

  var handler =
      const Pipeline().addMiddleware(enforceSSL()).addMiddleware(logRequests()).addHandler(_echoRequest);

As dart_frog middleware

import 'package:shelf_enforces_ssl/shelf_enforces_ssl.dart';

Handler enforceSSL(Handler handler) {
    return handler.use(fromShelfMiddleware(enforceSSL()));
}

Defining custom error response

.addMiddleware(
    enforceSSL(
      errorResponse: Response(
        403,
        body: 'Please use HTTPS when you try to send data to this API',
      ),
    ),
  ),