All Projects → JordiCorbilla → BaaSDelphiSamples

JordiCorbilla / BaaSDelphiSamples

Licence: MIT license
💾 Code samples for BaaS and PaaS using Delphi

Programming Languages

pascal
1382 projects

Projects that are alternatives of or similar to BaaSDelphiSamples

Libhv
🔥 比libevent、libuv更易用的国产网络库。A c/c++ network library for developing TCP/UDP/SSL/HTTP/WebSocket client/server.
Stars: ✭ 3,355 (+11083.33%)
Mutual labels:  openssl, https
Libuhttpd
A very flexible, lightweight and fully asynchronous HTTP server library based on libev and http-parser for Embedded Linux.
Stars: ✭ 302 (+906.67%)
Mutual labels:  openssl, https
jota-cert-checker
Check SSL certificate expiration date of a list of sites.
Stars: ✭ 45 (+50%)
Mutual labels:  openssl, https
pki
Certificate Authority management suite
Stars: ✭ 23 (-23.33%)
Mutual labels:  openssl, https
httpsbook
《深入浅出HTTPS:从原理到实战》代码示例、勘误、反馈、讨论
Stars: ✭ 77 (+156.67%)
Mutual labels:  openssl, https
E2guardian
E2guardian is a web content filter that can work in proxy, transparent or icap server modes
Stars: ✭ 340 (+1033.33%)
Mutual labels:  openssl, https
Rxffmpeg
🔥💥RxFFmpeg 是基于 ( FFmpeg 4.0 + X264 + mp3lame + fdk-aac + opencore-amr + openssl ) 编译的适用于 Android 平台的音视频编辑、视频剪辑的快速处理框架,包含以下功能:视频拼接,转码,压缩,裁剪,片头片尾,分离音视频,变速,添加静态贴纸和gif动态贴纸,添加字幕,添加滤镜,添加背景音乐,加速减速视频,倒放音视频,音频裁剪,变声,混音,图片合成视频,视频解码图片,抖音首页,视频播放器及支持 OpenSSL https 等主流特色功能
Stars: ✭ 3,358 (+11093.33%)
Mutual labels:  openssl, https
Mutual Tls Ssl
🔐 Tutorial of setting up Security for your API with one way authentication with TLS/SSL and mutual mutual authentication for a java based web server and a client with both Spring Boot. Different clients are provided such as Apache HttpClient, OkHttp, Spring RestTemplate, Spring WebFlux WebClient Jetty and Netty, the old and the new JDK HttpClient, the old and the new Jersey Client, Google HttpClient, Unirest, Retrofit, Feign, Methanol, vertx, Scala client Finagle, Featherbed, Dispatch Reboot, AsyncHttpClient, Sttp, Akka, Requests Scala, Http4s Blaze, Kotlin client Fuel, http4k, Kohttp and ktor. Also other server examples are available such as jersey with grizzly. Also gRPC examples are included
Stars: ✭ 163 (+443.33%)
Mutual labels:  openssl, https
Wolfssl
wolfSSL (formerly CyaSSL) is a small, fast, portable implementation of TLS/SSL for embedded devices to the cloud. wolfSSL supports up to TLS 1.3!
Stars: ✭ 1,098 (+3560%)
Mutual labels:  openssl, https
Golang Tls
Simple Golang HTTPS/TLS Examples
Stars: ✭ 857 (+2756.67%)
Mutual labels:  openssl, https
Pric
Simple zero-config tool to create Private Certificate Authority & issue locally-trusted development server certificates with any domain names you'd like. SSL certificates for development purposes.
Stars: ✭ 87 (+190%)
Mutual labels:  openssl, https
ParseCareKit
Securely synchronize any CareKit 2.1+ based app to a Parse Server Cloud. Compatible with parse-hipaa.
Stars: ✭ 28 (-6.67%)
Mutual labels:  parse, baas
playground-for-android
Simple examples that help you get started with Appwrite + Android (=❤️)
Stars: ✭ 48 (+60%)
Mutual labels:  baas
cryptocli
The ultimate tool for data transfer, manipulation and proxy.
Stars: ✭ 16 (-46.67%)
Mutual labels:  openssl
demos-for-vue
Demos and tutorials for getting started with Appwrite + Vue.js
Stars: ✭ 37 (+23.33%)
Mutual labels:  baas
python-fastimport
Git Fastimport parser and generator in Python
Stars: ✭ 19 (-36.67%)
Mutual labels:  parse
get LibSeat
利昂图书馆预约系统自动预约&签到程序。支持包括中国人民大学、北京师范大学、济南大学、哈尔滨工业大学等在内的38所高校的图书馆系统
Stars: ✭ 39 (+30%)
Mutual labels:  https
detect-cloudflare-plus
True Sight Firefox extension.
Stars: ✭ 34 (+13.33%)
Mutual labels:  https
HttpsUtility
A basic HTTPS utility S# module.
Stars: ✭ 45 (+50%)
Mutual labels:  https
eslump
Fuzz testing JavaScript parsers and suchlike programs.
Stars: ✭ 56 (+86.67%)
Mutual labels:  parse

BaaS Delphi Indy Samples over https

Delphi version License

Code samples for BaaS (Kinvey), BaaS (Firebase) and PaaS (Parse.com) using Delphi 10.2 Tokyo and Indy Library

Related Articles:

Win64 example app using Kinvey

Android example app using Kinvey

Data stored in Kinvey

These can be downloaded here:

Example usage Kinvey via Https:

function TKinveyRest.GetCollection: string;
var
  IdHTTP: TIdHTTP;
  IdIOHandler: TIdSSLIOHandlerSocketOpenSSL;
  response : string;
  encodedHeader : string;
begin
  try
    IdIOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
    IdIOHandler.ReadTimeout := IdTimeoutInfinite;
    IdIOHandler.ConnectTimeout := IdTimeoutInfinite;
    IdHTTP := TIdHTTP.Create(nil);
    try
      IdHTTP.IOHandler := IdIOHandler;
      IdHTTP.Request.Connection := 'Keep-Alive';
      IdIOHandler.SSLOptions.Method := sslvSSLv23;
      IdHTTP.Request.CustomHeaders.Clear;
      encodedHeader := TIdEncoderMIME.EncodeString(FOptions.AppId + ':' + FOptions.MasterSecret);
      IdHTTP.Request.CustomHeaders.Values['Authorization'] := 'Basic ' + encodedHeader;
      IdHTTP.Request.CustomHeaders.Values['X-Kinvey-API-Version'] := '3';
      IdHTTP.Request.ContentType := 'application/json';
      response := IdHTTP.Get('https://baas.kinvey.com/appdata/'+FOptions.AppId+'/'+FOptions.Collection+'/');
      result := response;
    finally
      IdHTTP.Free;
    end;
  finally
    IdIOHandler.Free;
  end;
end;

Example usage Firebase via Https:

function TFirebaseRest.GetCollection: string;
var
  IdHTTP: TIdHTTP;
  IdIOHandler: TIdSSLIOHandlerSocketOpenSSL;
  response : string;
begin
  try
    IdIOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
    IdIOHandler.ReadTimeout := IdTimeoutInfinite;
    IdIOHandler.ConnectTimeout := IdTimeoutInfinite;
    IdHTTP := TIdHTTP.Create(nil);
    try
      IdHTTP.IOHandler := IdIOHandler;
      IdHTTP.ReadTimeout := IdTimeoutInfinite;
      IdHTTP.Request.Connection := 'Keep-Alive';
      IdIOHandler.SSLOptions.Method := sslvSSLv23;
      IdHTTP.Request.CustomHeaders.Clear;
      IdHTTP.Request.ContentType := 'application/json';
      response := IdHTTP.Get('https://delphitestproject.firebaseio.com/.json?auth='+FOptions.FirebaseAuth);
      result := response;
    finally
      IdHTTP.Free;
    end;
  finally
    IdIOHandler.Free;
  end;
end;

Example usage Parse.com via Https:

procedure TParseRest.GetCollection: string;
var
  response : string;
  JSONToSend: TStringStream;
begin
  JSONToSend := TStringStream.Create('{}');
  IdHTTP1.Request.Connection := 'Keep-Alive';
  IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvSSLv23;
  IdHTTP1.Request.CustomHeaders.Clear;
  IdHTTP1.Request.CustomHeaders.Values['X-Parse-Application-Id'] := 'yourAppId';
  IdHTTP1.Request.CustomHeaders.Values['X-Parse-REST-API-Key'] := 'yourRESTAPIKey';
  IdHTTP1.Request.ContentType := 'application/json';
  response := IdHttp1.Post('https://api.parse.com/1/events/AppOpened', JSONToSend);
  result := response;
end;

Licence

The MIT License (MIT)

Copyright (c) 2017 Jordi Corbilla

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
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].