SVN and the overnight zip have been updated with three new major units
and two new demos for REST, OAuth2, Jose and Json, a fourth new unit
and sample for getting X509 certificates automatically will follow 
soon. Please note these new units should be considered early betas, 
and may change to add more functionality as they are used in real REST
applications, including the new X509 cert component.

OverbyteIcsSslHttpRest.pas
HTTPS REST functions for making REST (REpresentional State 
Transfer) client requests.The SslHttpRest component is a high level 
version of THttpCli that bundles all the extra components for extra 
functionality, including SSL configuration and certificate 
validation with a root bundle, SSL session caching, content 
compression, content code page decoding, persistent cookies, Json 
handling, logging, client SSL certificate. Includes functions for 
Auth2 authentication. OAuth1 is pending (need Twitter account).

Includes new components:

TRestParams - Defines a collection of  REST parameters and allows them
to be saved as URL encoded or Json.

TSslHttpRest - This descends from THttpCli, and publishes all it's
properties and events with additional methods and properties for 
making REST (REpresentional State Transfer) client requests.  Using
TSslHttpRest in new applications requires only a few lines of code and
no event handlers to make SSL REST requests instead of much more code
and many event handlers for THttpCli.

TSimpleWebSrv - This is a simple web server primarily designed for
accepting HTTP requests from REST servers which don't expect real 
pages to be sent, but also for .well-known responses generated by
applications. Note this web server does not support SSL since that
would require certificates.

TRestOAuth - This for handling 0Auth authorization to web apps, by
several means.  Beware OAuth is really a concept with differing
implementations, so that implementation may not always be straight
forward.  OAuth1 and 1A were originally developed for Twitter and use
cryptography, OAuth2 is a simpler and easier to implement version now
widely used by most cloud services without any cryptography (other 
than SSL).


OverbyteIcsSslJose.pas
JOSE - Json Object Signing and Encryption, used for: JWS (Json Web
Signing), JWT (Json Web Tokens), JWK (Json Web Key) and JWE (Json Web
Encryption).  Variously used by OAuth1, ACME and other protocols.
Includes OpenSSL Message Authentication Code functions used for 
signing JOSE structures with secret or private/public keys.


OverbyteIcsSuperObject.pas
An ICS version of Super Object Toolkit for Json, updated for the
latest versions of Delphi, supported by Delphi 7 and later.  Recent
Delphi versions do include Json and ideally this would be used by ICS
where possible, but that will add complexity to ICS.

Sorry, currently only packages for Delphi 2007 and 10.2 Tokyo FMX/VCL
have been updated, there are dozens that need doing.  

Any feedback from developers working with REST applications would be
appreciated.  These components are just my best effort attempt to
specifically access REST apps from two suppliers of SSL certificates,
and there may be other REST functionality that could usefully be added.


Angus
  
  




-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to