Загрузка файла не работает в реагировать родной для IOS - PullRequest
0 голосов
/ 16 мая 2018

Я использую «response-native-fetch-blob» версии 0.10.8 для загрузки файлов вact-native. Это работает, как и ожидалось для Android. Я могу скачать файлы, как ожидалось. Где, что касается IOS я не могу скачать файлы.

Ниже приведен код, который я использую.

  downloadFinalBlog() {
const { config, fs } = RNFetchBlob;
let PictureDir = fs.dirs.PictureDir; 
let options = {
  fileCache: true,
  addAndroidDownloads: {
    useDownloadManager: true, 
    notification: false,
    title: "Great ! Download Success ! :",
    mime: "application/pdf",
      description: "Final Blog"
  }
};
config(options)
   .fetch("GET", "http://www.example.com/example.pdf")

  .then(res => {
     console.log(res);

  }).catch((error) => {

    console.log(error);
  });

}

Может кто-нибудь подсказать мне, есть ли другой способ загрузки файлов в IOS в реагировать на родной.

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Привет получил ответ на этот вопрос, но забыл ответить здесь.

Для ios Нам нужно использовать openDocument внутри then, который предлагает пользователю сохранить файл во всех доступных приложениях.

Пожалуйста, используйте ниже код:

.then(resp => {
      // console.log(resp);
      if (Platform.OS === "ios") {
        RNFetchBlob.ios.openDocument(resp.data);
      }
    })
0 голосов
/ 16 мая 2018

это связано с App Transport Security.Ваша ссылка для скачивания находится на незащищенном http протоколе.Вы должны сделать исключение в Info.plist.Это исключение останется даже в производственной сборке.В каталоге проекта / ios / имя-проекта / Info.plist добавьте эти строки ниже

<key>example.com</key>
<dict>
  <key>NSExceptionAllowsInsecureHTTPLoads</key>
	<true/>
</dict>

Теперь ключ NSAppTransportSecurity должен выглядеть следующим образом

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSExceptionDomains</key>
	<dict>
		<key>example.com</key>
		<dict>
			<key>NSExceptionAllowsInsecureHTTPLoads</key>
			<true/>
		</dict>
    <key>localhost</key>
		<dict>
			<key>NSExceptionAllowsInsecureHTTPLoads</key>
			<true/>
		</dict>
	</dict>
</dict>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...