Wait() supplémentaire - tapez la commandeQu'est-ce qui a inspiré cette demande de liste de souhaits ?
Lors de l'accès à des fichiers à partir d'Internet, il est possible d'évaluer les problèmes côté client, tels que le code 403, ce qui signifie que l'utilisateur accédant n'a pas de privilèges pour accéder au fichier. Le "correctif" consiste à ouvrir une fenêtre Web dans JMP et à faire en sorte que l'utilisateur s'authentifie.Cela m'a fait réfléchir... Je pourrais utiliser Wait() et entrer un temps d'attente arbitraire pour permettre aux utilisateurs de s'authentifier avant que le reste du code ne soit terminé, une fonction personnalisée pourrait être utilisée pour vérifier constamment à certains intervalles de temps (par exemple : Wait(1)) pour voir si un l'utilisateur s'est authentifié, puis vérifie avec la boucle if contenant << Has Client Error, OU JMP pourrait implémenter une nouvelle fonction Wait Until( ) afin que l'exécution de code supplémentaire ne se produise pas tant que cet événement déclencheur n'est pas satisfait .
Quelle est l'amélioration que vous aimeriez voir?
Exemple
Names default to here(1);
auth_test_request = New HTTP Request( URL( some_URL_file_location ), Method( "GET" ) );
test = auth_test_request << Send;
if( auth_test_request << Has Client Error,
// CAN TAKE SECONDS TO FULLY LOAD - Creates new window and loads login page for authentication
webwindow = New window( "Login",
Button Box( "Close when logged ", Wait Until( webwindow << close window ); ),
wb = Web Browser Box()
);
wb << Navigate( authentication_page );
wb << Set Auto Stretching( 1, 1 );
wb << Set Max Size( 800, 1000 );
);
Pourquoi cette idée est-elle importante ?
Permet une personnalisation plus poussée de l'exécution du code
Automatisation et scriptScriptRe : Additional Wait() - type command - Statut changé en : AcquisRe : Attendre supplémentaire() - tapez la commandePouvez-vous fournir plus d'informations? Je pense que vous utilisez Windows et une version antérieure à JMP 17 ?
Si tel est le cas, le navigateur Web antérieur à JMP 17 utilisait Internet Explorer comme contrôle Web. Microsoft a mis fin au support d'IE.
Dans JMP 17 (et versions ultérieures), JMP utilise Microsoft Edge. Cela signifie qu'Edge s'exécute essentiellement comme un processus différent et que JMP n'a aucun moyen de savoir qui s'est connecté (dans votre cas) et ne peut pas partager l'authentification sur les deux connexions distinctes.
Cela étant dit, je pense que votre application effectue une authentification basée sur un formulaire (corrigez-moi si je me trompe) et vous pouvez vous connecter avec une requête HTTP en utilisant un "PUT" et les informations du formulaire. Si votre authentification utilise l'authentification OAuth2, celle-ci est intégrée à JSL à l'aide de HTTPRequest et New OAuth2. Des exemples se trouvent dans l'index des scripts.
N'hésitez pas à me contacter pour toute autre information que vous pouvez fournir.