All Projects → andrea-magni → Mars

andrea-magni / Mars

Licence: mpl-2.0
MARS-Curiosity Delphi REST Library

Programming Languages

pascal
1382 projects
delphi
115 projects

Labels

Projects that are alternatives of or similar to Mars

Wp Rest Api Cache
Enable caching for WordPress REST API and increase speed of your application
Stars: ✭ 239 (-10.82%)
Mutual labels:  rest
Http Fake Backend
Build a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.
Stars: ✭ 253 (-5.6%)
Mutual labels:  rest
Spring Petclinic Rest
REST version of the Spring Petclinic sample application
Stars: ✭ 257 (-4.1%)
Mutual labels:  rest
Prest
PostgreSQL ➕ REST, low-code, simplify and accelerate development, ⚡ instant, realtime, high-performance on any Postgres application, existing or new
Stars: ✭ 3,023 (+1027.99%)
Mutual labels:  rest
Go Grpc Http Rest Microservice Tutorial
Source code for tutorial "How to develop Go gRPC microservice with HTTP/REST endpoint, middleware, Kubernetes deployment, etc."
Stars: ✭ 250 (-6.72%)
Mutual labels:  rest
Httpie
As easy as /aitch-tee-tee-pie/ 🥧 Modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more. https://twitter.com/httpie
Stars: ✭ 53,052 (+19695.52%)
Mutual labels:  rest
Jersey 2.x User Guide
Jersey 2.x User Guide《Jersey 2.x 用户指南》 ,中文翻译
Stars: ✭ 235 (-12.31%)
Mutual labels:  rest
Vscode Restclient
REST Client Extension for Visual Studio Code
Stars: ✭ 3,289 (+1127.24%)
Mutual labels:  rest
React Fetches
🐙React Fetches a new way to make requests into your REST API's.
Stars: ✭ 253 (-5.6%)
Mutual labels:  rest
Azure Devops Python Api
Azure DevOps Python API
Stars: ✭ 257 (-4.1%)
Mutual labels:  rest
Jiraps
PowerShell module to interact with Atlassian JIRA
Stars: ✭ 241 (-10.07%)
Mutual labels:  rest
Flaresolverr
Proxy server to bypass Cloudflare protection
Stars: ✭ 241 (-10.07%)
Mutual labels:  rest
Nodebestpractices
✅ The Node.js best practices list (December 2021)
Stars: ✭ 72,734 (+27039.55%)
Mutual labels:  rest
Fosrestbundle
This Bundle provides various tools to rapidly develop RESTful API's with Symfony
Stars: ✭ 2,683 (+901.12%)
Mutual labels:  rest
Reservoir
A back end for your front end: a content repository. Powered by Drupal 8, JSON API and OAuth2.
Stars: ✭ 262 (-2.24%)
Mutual labels:  rest
Mockoon
Mockoon is the easiest and quickest way to run mock APIs locally. No remote deployment, no account required, open source.
Stars: ✭ 3,448 (+1186.57%)
Mutual labels:  rest
Awesome Rest
A collaborative list of great resources about RESTful API architecture, development, test, and performance
Stars: ✭ 2,922 (+990.3%)
Mutual labels:  rest
Presentations
Collection of presentations for advanced Python topics
Stars: ✭ 264 (-1.49%)
Mutual labels:  rest
Flutter Redux Starter
Starter project and code generator for Flutter/Redux
Stars: ✭ 262 (-2.24%)
Mutual labels:  rest
Django Oscar Api
RESTful JSON API for django-oscar
Stars: ✭ 251 (-6.34%)
Mutual labels:  rest

MARS-curiosity logo

Delphi REST Library

  1. Lightweight
  2. Easy and powerful
  3. 100% RESTful Web Service
  4. Delphi-like
  5. Advanced dataset support with FireDAC

More features ...

Installation

  1. Clone or download this project
  2. Add folders to RAD Studio Library Path
  3. Build All in the RAD Studio IDE
  4. Install two packages

More about the installation ...

Use the Code Luke!

Build REST server with MARS Curiosity is very easy. To run a simple REST server just create a new Console Application and use the following code:

program Mars1;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils,
  MARS.Core.Engine,
  MARS.http.Server.Indy,
  MARS.mORMotJWT.Token,
  MARS.Core.MessageBodyWriters,
  MARS.Core.Attributes,
  MARS.Core.MediaType,
  MARS.Core.Registry;

type
  [Path('helloworld')]
  THelloWorldResource = class
  public
    [GET, Produces(TMediaType.TEXT_PLAIN)]
    function SayHelloWorld: string;
  end;

function THelloWorldResource.SayHelloWorld: string;
begin
  Result := 'Hello World! Here is MARS Curiosity ...';
end;

var
  FEngine: MARS.Core.Engine.TMARSEngine;
  FServer: MARS.http.Server.Indy.TMARShttpServerIndy;
begin
  // ----------------------------------
  // Register a resource class
  MARS.Core.Registry.TMARSResourceRegistry.Instance.
    RegisterResource<THelloWorldResource>;
  // ----------------------------------
  // Build and configure the engine
  FEngine := MARS.Core.Engine.TMARSEngine.Create;
  FEngine.BasePath := '/rest';
  FEngine.Port := 8080;
  FEngine.AddApplication('DefaultAPI', '/default', ['*.THelloWorldResource']);
  FServer := MARS.http.Server.Indy.TMARShttpServerIndy.Create(FEngine);
  // ----------------------------------
  // Run the REST server
  FServer.Active := True;
  Writeln ('Server is running ...');
  Write ('Press Enter to stop ...');
  Readln;
  // ----------------------------------
  // Close the server
  FServer.Active := False;
  FreeAndNil(FServer);
  FreeAndNil(FEngine);
end.

Documentation

Forum

Official MARS Curiosity forum at Delphi-Praxis International: https://en.delphipraxis.net/forum/34-mars-curiosity-rest-library/

Contribution

It would be great if you would like to support this project. It's quite easy and you can became better Gitter then.

Thanks

Most of the code has been written by the author (Andrea Magni) with some significant contributions by Nando Dessena, Stefan Glienke and Davide Rossi. Some of my customers actually act as beta testers and early adopters. I want to thank them all for the trust and effort.

Related Links

Embarcadero Delphi is a modern, powerful and effective language and development tool. Learn more about it at the following links:

COPYRIGHTS

  • The Delphi stylized helmet icon is trademark of Embarcadero Technologies.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].