Skip to main content
Known Participant
Mar 19, 2018 7:37 AM UTC
Answered

Best practice calling REST api from plugin

I need to call a REST service from my plugin. What would be the best practice to do so? I have tried to find a suitable function for this in the SDK, but I dont think there is such. Therefore I was thinking of using wininet under windows (and something similar for Mac). Is there a better way to do this?

This topic is closed to new replies. Start a new post to keep the conversation going.
Thom Parker
Thom ParkerCorrect answer
Community Expert
Mar 19, 2018 4:10 PM UTC

There isn't anything in the Plug-in SDK for handling HTTP interactions. As you've already mentioned, you'd have to use another SDK for this. However, there is a simple Acrobat based option that might work for making REST requests from a plug-in.  The Acrobat JavaScript model includes an NET.HTTP object which makes raw HTTP Requests. This object can be accessed from a plug-in with the Forms HFT. The AFExecuteThisScript function. I don't know if this is any better for not stopping up Acrobat, but it can be setup to be asynchronous.

Thom Parker - Software Developer at PDFScriptingUse the Acrobat JavaScript Reference early and often

7 replies

Legend
Mar 22, 2018 7:44 AM UTC

If you can find an API that doesn’t need you to install support files like DLLs that may be best. DLL search order is awkward for plugins because it does not include the plugin folder.

Translate
Known Participant
Mar 22, 2018 3:11 PM UTC

True, hopefully I will avoid just that. Right now I am trying out one that don't need something in addition. Thanks!

Translate
Known Participant
Apr 15, 2018 3:22 PM UTC

So, I ended up using the Beast library from Boost. Works nice. I have also tested with Cpr based on lib curl and that works fine too.

Translate
Thom Parker
Community Expert
Thom ParkerCommunity ExpertCorrect answer
Community Expert
Mar 19, 2018 4:10 PM UTC

There isn't anything in the Plug-in SDK for handling HTTP interactions. As you've already mentioned, you'd have to use another SDK for this. However, there is a simple Acrobat based option that might work for making REST requests from a plug-in.  The Acrobat JavaScript model includes an NET.HTTP object which makes raw HTTP Requests. This object can be accessed from a plug-in with the Forms HFT. The AFExecuteThisScript function. I don't know if this is any better for not stopping up Acrobat, but it can be setup to be asynchronous.

Translate
Thom Parker - Software Developer at PDFScriptingUse the Acrobat JavaScript Reference early and often
Known Participant
Mar 22, 2018 6:27 AM UTC

Thank you, I am in the process of testing a couple of SDKs at the moment. Will let you know which one I used.

Translate
Legend
Mar 19, 2018 9:07 AM UTC

You should bear in mind that if your plugin does anything that waits, then all of Acrobat will hang. Net connections potentially wait a long time, especially if there are net outages.

Translate