Yes, jsonp authentication is tough because the client browser must know the shared secret.
The option would be to make an anonymous endpoint (without the need for authentication). This happens with other security features (the server is open for attacks, anyone can call it). But you can handle this either by exposing a very limited resource, or by using a speed limit. When limiting the speed to one client, a certain number of calls are allowed for a certain period of time. It works by identifying the client (for example, using source files or other clicks).
I once experimented with one-time tokens, but they all failed somewhat, because you had the problem of getting the marker itself and protecting multiple marker extracts with bots (which again is necessary to limit the speed).
source share