PhoneGap / Cordova InAppbrowser Файл Скачать вопрос
Я разрабатываю мобильное приложение, используя PhoneGap / Cordova.
Я использую InAppBrowser, чтобы показать внешний веб-сайт, используя метод "window.open" в Cordova.
Внешний сайт отображает список некоторых файлов и ссылки для скачивания. Когда я нажимаю гиперссылки на загрузку, она работает нормально во всех браузерах.
Но когда я вызываю этот внешний веб-сайт из InAppBrowser в приложении Cordova Mobile, ссылки для загрузки на этой странице не работают.
Мы не можем использовать Cordova API, когда мы используем InAppBrowsers. Как я могу преодолеть эту проблему?
ОБНОВИТЬ :
Я разработал адаптивный веб-сайт в ASP.Net. Одной из функций этого веб-сайта является сохранение файлов на сервере SQL в виде байтов и загрузка в виде файлов, когда это необходимо.
У меня есть элемент управления GridView для отображения списка файлов и параметров для загрузки. Когда вы щелкаете файл для загрузки, серверный код создаст файл из SQL Server и прикрепит его к HTTP-ответу.
Код C #:
Response.Clear();
Response.Buffer = true;
Response.Charset = "";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.ContentType = contentType;
Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileName);
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
Когда вы запускаете это веб-приложение в настольных браузерах, оно будет работать как положено. Файл будет загружен.
Я завернул этот сайт в приложение Phonegap / Cordova Mobile.
Javascript:
window.open(encodeURI("http://example.com/Files.aspx"), '_blank', 'location=no');
Сайт будет работать на InAppBrowser. Не удалось обработать ответ http загрузки файла.
Мы можем решить эту проблему, изменив собственные коды Android / IOS. У меня нет доступа к коду Android / IOS. Потому что я использую IntelXDK для сборки приложения Android / IOS в облаке.
Ниже приводится общая проблема. в Cordova InAppBrowser, как обрабатывать Http-ответ, который содержит типы содержимого файла?