web-dev-qa-db-fra.com

question d'installation de raccourci iOS 12 pour "Exécuter JavaScript sur une page Web"

J'espère que c'est le bon endroit pour cette question car elle est centrée sur JavaScript. Dans la nouvelle application - iOS 12 Raccourcis , vous pouvez créer des flux de travail. Je veux en créer une qui lance simplement une page Web, renseigne mon nom d'utilisateur et mon mot de passe, puis clique sur le bouton d'envoi, quelque chose comme ça ...

document.myForm.username.value = 'myUsername';
document.myForm.password.value = 'myPassword';
document.getElementById('loginSubmit').submit();

Mais avant d’aller aussi loin, je veux juste lancer une alert(1);. Je ne peux pas que ça se produise. Je continue à recevoir ce message d'erreur ci-dessous ...

L'exécution de JavaScript sur une page Web a échoué car les raccourcis ne pouvaient pas convertir de l'URL à la page Web Safari.

 enter image description here

Je ne suis pas sûr de ce que cela signifie. Je n'ai pas été en mesure de trouver des informations ou des tutoriels sur la façon de l'utiliser. Est-ce que quelqu'un sait comment faire fonctionner JavaScript? Merci!

4
gfrobenius

la première chose que vous devez savoir, c'est que les documents sont ici: https://support.Apple.com/guide/shortcuts/welcome/ios

Maintenant, le problème est que "Exécuter Javascript sur une page Web" nécessite une entrée appelée "Pages Web Safari" mais les URL ouvertes ne donnent en sortie que le résultat de l'ouverture de l'URL qui affiche la page dans safari, afin de la faire fonctionner Besoin d'URL ouverte pour vous donner un élément "page Web Safari".

Le seul moyen que j’ai trouvé pour y parvenir est d’utiliser le raccourci comme une "extension de partage"

  1. Dans votre flux de travail, supprimez l'élément URL.
  2. Accédez à la page des paramètres de raccourci en appuyant sur l'icône Icône Paramètres
  3. Maintenant, appuyez sur "Afficher dans une feuille de partage"
  4. Dans la section "Types acceptés", sélectionnez uniquement les URL situées tout en bas de la liste.
  5. Enfin, allez à safari, ouvrez l’URL de votre choix et appuyez sur le bouton de partage. Si vous le faites pour la première fois, vous devez activer la section "Raccourcis". , faites défiler vers le bas et sélectionnez «Raccourcis» Après cela, vous aurez l’option Raccourcis, appuyez dessus et sélectionnez votre raccourci pour exécuter le script Java dans la page.

Il est important de noter que vous devez faire quelque chose avec le résultat de "Exécuter javascript sur des pages Web", par exemple afficher le résultat dans une alerte, car la façon dont vous avez votre flux de travail actuel donne l'impression que rien ne se produit.

3
Abraham Soto

Dans l'action Exécuter JavaScript sur une page Web, une note indique: "Élément de page Web Safari dans les raccourcis indiquant qu'ils ne sont disponibles que lors de l'exécution de votre raccourci en tant qu'extension d'action dans Safari".

Donc, malheureusement, il n'est pas possible d'enchaîner les actions qui lancent une URL puis exécutent JS. Vous devez visiter l'URL et exécuter l'action à partir de la feuille de partage.

1
user85303

Les actions Safari exigent que Safari soit ouvert à la page souhaitée lors du lancement de l'activité. Cela dit, vous pouvez y arriver facilement en utilisant un autre élément.

Je ne connais pas votre niveau technique, alors je vous prie de m'excuser si vous connaissez déjà quelque chose de ce genre, mais pour vous et pour toute référence future à ceux qui cherchent, voici le guide.

Tout d’abord, accédez à la page de votre choix sur un navigateur Mac/PC et ouvrez les outils de développement. J'utilise Firefox Developer Edition, mais Safari et Chrome en ont aussi. Si vous utilisez MacOS Safari, vous devez d’abord ouvrir le menu Préférences de Safari, cocher «Options pour les développeurs», puis le relancer.

Une fois les outils de développement ouverts, basculez vers l’onglet/le volet Réseau; recherchez et désactivez l'option qui efface le journal à chaque chargement de page. Laissez ce volet ouvert, remplissez le formulaire, appuyez sur la corbeille pour effacer le journal du réseau, puis soumettez le formulaire. Maintenant, la demande HTTP de la soumission du formulaire doit être la première ou la seule chose de la liste.

Sélectionnez la ligne pour la soumission du formulaire et examinez l'en-tête de la demande. Il doit y avoir une méthode de demande, une URL de demande et toutes les paires clé-valeur qui ont été soumises avec le formulaire.

De retour dans l'application Raccourcis, ajoutez un élément URL et donnez-lui la même URL que l'URL de la demande. Enchaînez cet élément d'entrée URL en élément d'action Obtenir le contenu de l'URL et ouvrez le tiroir Options avancées. S'il existe des en-têtes supplémentaires dans le journal des demandes, vous pouvez appuyer sur Ajouter un nouvel en-tête pour en ajouter d'autres. Faites correspondre le type de demande au champ Méthode, choisissez «Formulaire» comme corps de la demande, puis ajoutez toutes les clés et valeurs de la demande.

En tout cas, c’est tout.

Chaînez ceci à Set Variable puis utilisez un bloc IF pour tester si la connexion a réussi ou non. Si cela réussit, créez un résultat d'affichage indiquant «Vous êtes maintenant connecté.» Et en cas d'échec, affichez la variable pour pouvoir déboguer la réponse.

0
Brent Foxwell