web-dev-qa-db-fra.com

Erreur de passage pour piétons à propos de "La demande a été refusée pour des raisons de sécurité"

J'utilise cordova 6.3.1 et le passage pour piétons du plugin cordova 2.1.0 dans l'application Android . J'utilise l'auto-certification sur le serveur . Lorsque j'envoie une demande de publication http à partir de l'application cordova au serveur, "La demande a été refusée pour des raisons de sécurité" un message est apparu dans la partie inférieure de l'écran et la demande de publication http est un échec . Je peux envoyer une demande de publication http à l'aide de l'ancien passage pour piéton du plugin cordova (1.5.0) . Connaissez-vous les solutions de quelqu'un . n'est pas un travail http://ivancevich.me/articles/ignoring-invalid-ssl-certificates-on-cordova-Android-ios/

10
yone

J'ai eu le même message Toast affichant la demande a été refusée pour la sécurité. Pour moi, c'était aussi lié au certificat, mais la solution était inattendue. L’heure du système de mon appareil a été légèrement ralentie (presque un an), ce qui a entraîné l’échec de la communication SSL. Corriger le temps a résolu le problème pour moi. (Merci à la page des comptes Google, qui a également rencontré la même erreur dans le navigateur et a donné une explication très agréable sur la raison.)

4
mvandillen

Je faisais face au même problème. Essayez de supprimer la balise meta pour CSP (politique de sécurité du contenu), et ajoutez les lignes ci-dessous dans config.xml:

<access Origin="*" />
<allow-intent href="*" />
<allow-navigation href="*" />

De plus, j'ai installé le cordova-plugin-whitelist et le crosswalk-lite . Lancez cordova clean avant de créer votre application Android.

J'espère que ça aide!

--- MODIFIER ---

La solution ci-dessus ne fonctionnait que pour le mode débogage pour moi ..__ Donc, j'ai trouvé un moyen de contourner le problème avec cordova-plugin-crosswalk-certificate avec Crosswalk version 18+!

1
pcsantana

Si aucune des réponses ne fonctionne, vérifiez la date/heure et le fuseau horaire

1
Daniel C

J'ai résolu ce problème en ajoutant les 3 dernières lignes de l'extrait suivant à config.xml :

<access Origin="*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
<allow-navigation href="data:*" />
1
StJimmy

Je me suis trompé d'URL (domaine personnalisé) en raison d'une faute d'orthographe. Vous pouvez également vérifier si le certificat SSL est valide. Il génère une erreur lorsque votre certificat SSL a expiré. 

0
Karthikeyan VK