2016-07-01 2 views
5

Je veux charger une image dans le simulateur iOS sur une source http. Mais rien n'est montré sur l'écran attendez le fil de fer qui peut être rendu visible avec l'inspecteur. Si vous chargez le même code dans Android, cela fonctionne très bien et si vous utilisez un https uri au lieu de http cela fonctionne aussi bien.Réagir-natif chargement de l'image sur https fonctionne alors que http ne fonctionne pas

code Exemple:

render() { 
    return ( 
    <View> 
    <Image 
     source={{uri:https://facebook.github.io/react/img/logo_og.png'}} // works 
    // source={{uri: http://facebook.github.io/react/img/logo_og.png'}} // doesn't work 
     style={{width: 400, height: 400}} 
    /> 
    </View> 
); 
} 

Répondre

5

Le problème est que votre essayez de charger l'image à partir d'une connexion http et non d'une connexion https comme il est exigé par Apple. Essayez si votre code fonctionne avec un autre uri qui utilise https au lieu de http. Dans Android, cela devrait fonctionner avec http ou https. En savoir plus à https://github.com/facebook/react-native/issues/8520 et http://www.techrepublic.com/article/wwdc-2016-apple-to-require-https-encryption-on-all-ios-apps-by-2017/.

Si vous voulez vraiment charger quelque chose via http, vous pouvez éditer le fichier info.plist et y ajouter votre exception. info détaillée ici https://ste.vn/2015/06/10/configuring-app-transport-security-ios-9-osx-10-11/

0

ajouter à info.plist

<key>NSAppTransportSecurity</key> 
<dict> 
<!--Include to allow all connections (DANGER)--> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
</dict>