Installing Keyman Mobile Apps through web server


Hello. This might sound stupid but since I am not a programmer, I will ask anyway.
I am working with creating keyboard for mobile apps. I put my .json and .js files on the web server.
When I ran my URL, it asked me if I wanted to download the custom keyboard. When I said yes, a screen pop-up saying “downloading”. But after the downloading screen disappeared, none is happening. The keyboard is not installed. I tried to recheck everything but could not find any problem. It works fine if I installed it directly using my machine as the server.
Could you please advise? I can attach the files, unfortunately I cannot find any option to do it here. Thank you.


More info.
When I tried it on Android phone, it didn’t provide any message.
When I tried it on iPhone, I received the following message: Keyboard Download Error, Failed to fetch JSON file.
Thank you.

Here is my json file:

“options” : {
“device” : “any”,
“keyboardBaseUri” : “”,
“fontBaseUri” : “
“keyboard” : {
“id” : “burkina_azerty_clavier”,
“name” : “Burkina AZERTY Clavier”,
“filename” : “burkina_azerty_clavier-1.0.js”,
“version” : “1.0”,
“lastModified” : “2017-06-19T11:41:09.734Z”,
“languages” : [
“id” : “bfb”,
“name” : “Burkina Faso”

And here is the URL I used:

- Install Burkina AZERTY Clavier


I’ve investigated this, and had to dig a bit.

It looks like your host is doing some nasty things. If you try and retrieve the file (e.g. using curl or wget command line app), you will instead be presented with a web page that includes a snippet of javascript that redirects to the file. It seems to do this after setting a cookie. This is not something we can support: we require the .json file to be served from the host unmodified. This may be something you can configure on the web host?

(Note: this page below is what the server is returning, instead of the .JSON file):

<html><body><script type="text/javascript" src="/aes.js" ></script><script>function toNumbers(d){var e=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:arguments,e="",f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),b=toNumbers("98344c2eee86c3994890592585b49f80"),c=toNumbers("8cc302d2464b5bfb799cbf8de5ca103f");document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/"; location.href="";</script><noscript>This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support</noscript></body></html>````