Я использовал много API node.js (включая google / baidu / bing / wikipedia) внутри моего приложения Cordova, вот что я сделал:
Установите файл node.js / express / socket.io на вашем Linux-сервере.
Используйте socket.io внутри приложения Cordova для создания соединений «много клиентов к одному серверу» между вашим приложением и сервером node.js / socket.io. В https://socket.io приведен простой пример того, как это сделать.
В приложении Cordova используйте что-то вроде socket.emit ('FromClientToServerCallAPI', data) для вызова API.
На сервере node.js определите функцию:
socket.on ('FromClientToServerCallAPI', данные)
и внутри этой функции вызовите ваш API, и после получения результата от поставщика API запустите:
socket.emit ('FromServerToClientAPIResult', результат)
- В приложении Cordova определите функцию:
socket.on ('FromServerToClientAPIResult', результат)
затем сделайте что-нибудь с 'result'
пожалуйста. обратите внимание, что все функции выше являются асинхронными.
Никогда не пытайтесь вызывать API напрямую в кодах вашего клиента. Некоторые провайдеры API требуют, чтобы вы подали заявку на сервис API и дали вам «ключ» для использования API, вы не хотите помещать этот «ключ» внутрь ваш javacript и раскрывайте его всем вашим пользователям приложения, верно?