web-dev-qa-db-fra.com

iOS v12 Https demande des erreurs

J'ai remarqué que les requêtes https effectuées à partir de mon application Ionic Angular sur iOS v12 échouaient et n'atteignaient jamais mon backend. 

Je pourrais confirmer que mon application est productive et le fait que cette erreur ne se produit que sur iOS> = v12

Lorsque je débogue dans Xcode 10 beta, j'obtiens l'erreur suivante

{“En-têtes”: {“normalizedNames”: {}, “lazyUpdate”: null, “en-têtes”: {}}, “status”: 0, “statusText”: “Erreur inconnue”, “url”: null, “ok ”: False,“ name ”:“ HttpErrorResponse ”,“ message ”:“ Réponse d'échec Http pour (url inconnue): 0 Erreur inconnue ”,“ erreur ”: {“ isTrusted ”: true}}

Le backend My Node/Express.js définit les en-têtes suivants

var allowedOrigins = ["https://example.com", "http://ionic.local", "http://localhost:8080"];

 var Origin = req.headers.Origin;
 if(allowedOrigins.indexOf(Origin) > -1){
        res.setHeader('Access-Control-Allow-Origin', Origin);
 } else {
        res.setHeader("Access-Control-Allow-Origin", "https://example.com");
    }

 res.header("Access-Control-Allow-Credentials", "true") 
 res.header("Access-Control-Allow-Headers", "Origin, Authorization, Content-Type, Content-Range, Content-Disposition, Content-Description, X-Requested-With, X-ACCESS_TOKEN");
 res.header("Access-Control-Allow-Methods", "GET,PUT,POST");

Quelqu'un a-t-il le même problème? Qu'avez-vous changé dans votre code pour résoudre le problème pour iOS v12?

P.S.: J'ai ouvert un numéro de Apple

Aussi ici le sujet lié sur le forum Ionic: https://forum.ionicframework.com/t/ios-12-beta-preflight-requests-fail

Et juste au cas où ouvert un problème sur le plugin WkWebView: https://github.com/ionic-team/cordova-plugin-ionic-webview/issues/112

METTRE À JOUR

Je ne suis pas sûr, mais il semblerait que je ne fasse face à un problème que lorsque je pose des requêtes à POST, respectivement que je ne le fais pas lorsque je fais des requêtes GET ... Pouvez-vous confirmer cela aussi?

UPDATE 2

Dans la discussion/le numéro suivant, https://github.com/ionic-team/cordova-plugin-ionic-webview/issues/112 , nous parions également sur un bogue de la version iOS elle-même. Voyons si cela sera corrigé avec la prochaine version bêta

UPDATE 3

Xcode 10 beta 2 respectivement iOS 12 beta 2 publié le mardi 19 juin 2018 a résolu mon problème

6
David Dal Busco

Le problème était un problème interne de iOS 12 beta 1

Xcode 10 beta 2 respectivement iOS 12 beta 2 publié le mardi 19 juin 2018 a résolu mon problème

1
David Dal Busco

Je suis très confiant qu'il ne s'agit que d'un bêta 1 sans aucun travail confirmé. Je n'ai jamais trouvé l'occasion de vérifier cela personnellement lorsque je travaillais chez WWDC, mais cela semble être très confirmé par plusieurs sources, y compris ce bogue sur radar ouvert . Je vais déposer un bogue supplémentaire directement auprès d’Apple et mettre à jour ma réponse avec toutes les réponses.

Mise à jour: J'ai testé plusieurs appareils sur iOS 12 beta 2 et le problème semble être résolu. Aucune mise à jour sur le bogue déposé auprès d'Apple, mais je vais supposer que cela a été traité dans la dernière mise à jour.

Mise à jour 2: Apple a finalement fermé mon bogue comme corrigé.

1
InkGolem