HTTPS Support
Some services require the HTTPS://
protocol for the callback URL. Services that follow the OAuth 2.0 authentication flow have an HTTP / HTTPS server listening on a specific port. when HTTPS is a requirement, the server needs to handle the HTTPS protocol and provide certificates for the page to load properly. In TMS FNC Cloud Pack, this is handled automatically for https://localhost callback URLs for most operating systems. For some operating systems however, it requires some additional steps.
WEB
For WEB based applications running on TMS WEB Core, the requirement of the HTTPS protocol for a callback URL implies that your application will need to be uploaded to an HTTPS server. Other than that, the callback mechanism and authentication flow will not change or differ from when developing with the HTTP protocol. The drawback is that you will not be able to run the application and immediately see the result.
Windows, Linux, macOS, Android
The required self-signed certificates will be extracted to a temporary folder, and the dynamically loaded OpenSSL libraries will be extracted from a resource file. When running in debug mode, the HTTPS server will throw an exception, please click on "Continue" to go through with the authentication process. The error will not be shown in release mode.
.
iOS
The required self-signed certificates will be extracted to a temporary folder. When compiling the application, the linker will search for libCrypto.a & libSSL.a, 2 files that are located in a sub-folder HTTPS Support. Copy them into the main source folder, or add the sub-folder to the iOS 64 bit device library path of your IDE. When linking, you will get an error, which is explained in the following QC report.
https://quality.embarcadero.com/browse/RSP-37075
Add -V- in additional parameters in your project to avoid linking error.
Customization
When customization to either the HTTP/HTTPS server or the SSL IO handler is required, please use the OnConfigureHTTPServer or OnConfigureHTTPServerSSLHandler events