Giter Site home page Giter Site logo

ocelot's Introduction

Ocelot

Build status

Windows Build history

Coverage Status

Ocelot is a .NET Api Gateway. This project is aimed at people using .NET running a micro services / service orientated architecture that need a unified point of entry into their system.

In particular I want easy integration with IdentityServer reference and bearer tokens.

We have been unable to find this in my current workplace without having to write our own Javascript middlewares to handle the IdentityServer reference tokens. We would rather use the IdentityServer code that already exists to do this.

Ocelot is a bunch of middlewares in a specific order.

Ocelot manipulates the HttpRequest object into a state specified by its configuration until it reaches a request builder middleware where it creates a HttpRequestMessage object which is used to make a request to a downstream service. The middleware that makes the request is the last thing in the Ocelot pipeline. It does not call the next middleware. The response from the downstream service is stored in a per request scoped repository and retrieved as the requests goes back up the Ocelot pipeline. There is a piece of middleware that maps the HttpResponseMessage onto the HttpResponse object and that is returned to the client. That is basically it with a bunch of other features.

How to install

Ocelot is designed to work with ASP.NET core only and is currently built to netcoreapp2.0 this documentation may prove helpful when working out if Ocelot would be suitable for you.

Install Ocelot and it's dependencies using NuGet.

Install-Package Ocelot

All versions can be found here

Documentation

Please click here for the Ocleot documentation. This includes lots of information and will be helpful if you want to understand the features Ocelot currently offers.

Coming up

You can see what we are working on here

Contributing

Pull requests, issues and commentary welcome! No special process just create a request and get in touch either via gitter or create an issue.

Things that are currently annoying me

  • The base OcelotMiddleware lets you access things that are going to be null and doesnt check the response is OK. I think the fact you can even call stuff that isnt available is annoying. Let alone it be null.

Get more details at codescene.io.

ocelot's People

Contributors

tompallister avatar geffzhang avatar binarymash avatar marcdenman avatar juancash avatar stuartsaltzman avatar kinglionsoft avatar sharpn avatar rv-alove avatar hampos avatar eilyyyy avatar aringlot avatar gitter-badger avatar hemantkd avatar lousaibiao avatar yuchen1030 avatar

Watchers

Daniel Silion 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.