2016-04-12 26 views
1

Ben tepki-yerli kullanarak bir uygulama yazıyorum ve hem android hem de iOS için inşa edeceğiz. Her neyse, ben tepki-native kullanarak bir ZIP dosyası indirmeye çalışıyordum ama ben onu işe alamıyorum. Dosyayı indirdikten sonra planımı açmak ve AsyncStorage kullanarak saklamak. fetch('somewhere.path/file.zip', { method: 'GET', headers: { 'Accept-Encoding': 'application/zip' }, }) .then((response) => { console.log("Success"); }) .catch((error) => { console.log("Error"); }).done(); Success baskılı alır ancak yanıt verileri yapmaz: Ama aşağıda hata almaya devam: gibi benim isteği için çeşitli ayarları denedimTepki-yerel olarak ZIP dosyasını indir

[RCTNetworking.m:330] Received data was not a string, or was not a recognised encoding. ama ben sadece bir şey eksik tahmin Kod şu anda görünüyor zip dosyaları verilerini içerir.
XCode ve simülatör kullanarak hata ayıklamaya yardımcı olur.
Herhangi bir fikri olan varsa lütfen bana yardımcı olun! :) önceden

sayesinde Yon

Ayrıca bazı zip dosyaları indirip halletmek için bir uygulama yazmak
+0

Muhtemelen yerel kodda bunu yapmak gerekecek. Fetch, "application/zip" kodlamalarını anlamıyor gibi görünmüyor. 'tanınan bir kodlama değil ' – rooftop

+0

@rooftop Belki de bazı başlık veya başka bir şey eklemek için eksik olduğunu düşündüm. Deneyebileceğim bir şey biliyor musun? – denen

cevap

2

. Ve indirme fonksiyonu için, tepki-native-fetch-blob adlı bir eklenti kullanıyorum. Kod örnek:

import RNFetchBlob from 'react-native-fetch-blob'; 
... 
RNFetchBlob.config({ 
fileCache : true, 
path: path + '/file.zip'}) 
.fetch('GET','http://domain/file.zip') 
.progress((received, total) => {console.log('progress', received/total)}) 
.then((res) => {// the temp file path 
console.log('The file saved to ', res.path()); 
}); 

...

sayesinde

+0

Merhaba Phuc, İndirilen dosyayı açmak için hangi paketi kullanıyorsunuz? – Deepak

+0

Merhaba @Deepak, 'react-native-zip-archive' kullanıyorum –

+0

Cool! Teşekkür ederim. – Deepak

İlgili konular