It's great to be a noob! I am embarking on my first FMX cross platform application project, and since that FMX book won't arrive until August, I dare ask my fellow Delphinauts for some advice.

It's great to be a noob! I am embarking on my first FMX cross platform application project, and since that FMX book won't arrive until August, I dare ask my fellow Delphinauts for some advice.

I need to do JsonRPC (NOT SOAP) over HTTP from the client to our server.

Which is the preferable FMX client side HTTP library?

Comments

  1. You do know that Google will discontinue support by 3/2019

    ReplyDelete
  2. Richard Baroniunas , could you clarify?

    ReplyDelete
  3. Richard Baroniunas Discontinue support of what?

    ReplyDelete
  4. which book ? I see the about post for Andri's book is out well in ebook version

    ReplyDelete
  5. Lars Fosdal My suggestions:

    1) Use TRestClient, TRestRequest and TRestResponse of you need to download data from json and show it in tables

    2) Use IdHTTP for post or get requests (json too ofc), it is the best component for network stuff. REST components DO NOT have a good error handling (in particular if you are going to use the async version of the request; actually you will have to use the async version so the request will not run in the UI thread. This is crucial because if you make a request in the UI thread and the request takes a lot of seconds the UI thread freezes ofc and the android os may close your app!! He thinks your app has crashed. Running on a separate thread is good)

    3) Expert Delphi is what you need to get a very good intro to fmx! It is by Pawel Glowacki, I found it really nice and I think it is complete of the main topics for a beginner

    ReplyDelete
  6. Brett Wilton I have it on pre-order, but AFAIK it's not out yet?

    ReplyDelete
  7. Alberto Miola IdHTTP it is, then. I did plan on running it in a background thread. I still need to learn the best way of cross platform signaling, and I think I will be missing OmniThreadLibrary :/

    ReplyDelete
  8. Lars Fosdal oh your correct, I had missed it was still pre-order...that post had me fooled with the FINALLY.

    ReplyDelete
  9. Lars Fosdal TRestClient should be cross platform and async with ExecuteAsync() function

    ReplyDelete
  10. Brett Wilton The IdHTTP also has an async setting and completion event, but I will take a look. I am just slightly worried that there is "too much engineering" in the RestClient to easily adapt it to the POST-based request/response JsonRPC. I already did the server side with the Indy HTTP server to provide a JsonRCP interface for Google Glass apps written in Java.

    ReplyDelete

Post a Comment