WebSocket client implementations for Delphi - delphi

Are there free WebSocket client implementations for Delphi? I found only this one:
WebSockets Delphi Components
but it is not free.

Here is my open source library:
https://github.com/andremussche/DelphiWebsockets

I've added support for WebSockets to xxm. Not all handlers support the required IXxmRawSocket interface, but the Apache httpd module (xxmAHttpd) and the SCGI handler do, and I still get the best results with the standalone 'raw' handler xxmHttp. See more here.

Related

How to handle Authorization in a Delphi Webbroker Apache module?

I am working on an Apache module (WebBroker Apache dll) and would like to handle
Authorization: Basic
Unfortunately TWebRequest does not populate AuthPassword and AuthUser.
Any idea where can i find them?

dart:html WebSocket vs dart:io WebSocket

I was looking out for a sample WebSocket implementation on DartPad.
Here's a link to the implementation: WebSocket Sample
However, while trying to implement the same on my local machine, I encountered that Dart has two implementations of the WebSocket class.
One is provided in the dart:io package and another is provided in dart:html package.
Can anyone provide what's the difference between the two and what are the advantages of one over the other?
The one in dart:io is used for standalone app running on Dart VM including Flutter, while the one in dart:html is for Web browsers.
There is no major difference other than some implementation changes in both libraries:
WS in dart:io: https://api.dart.dev/stable/2.7.0/dart-io/WebSocket-class.html
WS in dart:html: https://api.dart.dev/stable/2.7.0/dart-html/WebSocket-class.html#constructors
if you see closely both the classes have the same approach in everything except creating a web socket instance.
dart:io :
Simple no arg constructor is deprecated. But has a factory method to create an instance using a Socket.
dart:html :
Websocket constructor takes a url string and a list of protocol objects.

Delphi 2010 DataSnap Client with HTTPS

I have a DataSnap server written in Delphi XE3, deployed as an ISAPI module with SSL.
I'm writing a client application for this server, but it has to be written in Delphi 2010 for now. I'm having trouble connecting to the server through HTTPS. I have no trouble connecting to the server through HTTP.
I can write a client in XE3 that connects through HTTPS and succeeds, so I know the server is working fine.
The error I receive is:
Protocol HTTPS can be used after an adequate instance of TDBXCommunicationLayer is registered with TDBXCommunicationLayerFactory.
I've googled the solution to a problem like this and was instructed to add DSHTTPLayer to the uses clause of my unit, and that works for HTTP, but it's not working for HTTPS.
Any ideas out there? Thanks a lot for your time.
I ended up using TIdHTTP and TIdSSLIOHandlerSocketOpenSSL components to connect via HTTPS. I parsed the JSON with a TJSONParser. Delphi 2010 doesn't support HTTPS through the TDSRestConnection.

How to make a simple proxy server?

I wanted to create a simple proxy to my localhost(xampp). I've looked into IdHTTPProxyServer but there is no available example of how to use it.
my intention is to monitor the Post/Get request of my application at runtime just like a debugger.
my application will Post/Get through localhost:8080 and then my proxy will be served as a bridge to localhost:80
any suggestion or example?
I am using D2009, D2010 must support Unicode.
Thank you in advance.
I know it's not Indy, but Synapse (I use it with Lazarus) has a Proxy Server Example included which should work on Delphi too. It worked well for me on FPC. The Demo is included in the Sources you get here:
http://www.ararat.cz/synapse/doku.php/download
You may use Overbyte ICS TCP/IP library, on the "user made" page you have a lot of proxy samples, one is tgphttpproxy.

How to send email via SSL and Indy in Delphi 7

I want to send email to Yahoo mail using Indy. But Yahoo uses 465 port with SSL connection. I don't know how to implement that in my program. I have read about TIdSSLIOHandlerSocketOpenSSL component on internet, but couldn't find such component in Delphi 7. Can anyone help?
I have found that Synapse library is much easier to use. Look at the code example I use: How To Use SMTP with TLS
In Delphi 6/7 the component was called TIdSSLIOHandlerSocket. This was Indy 8/9. It still uses Open SSL. I don't know why they changed the name in Indy 10.

Resources