2017-09-29 3 views
0

Je souhaite savoir s'il est possible d'exécuter une requête isql via HTTP dans OpenLink Virtuoso. Je comprends que le serveur isql fonctionne sur le port 1111, mais je ne trouve aucun exemple (par exemple curl) pour exécuter une requête SQL (pas SPARQL) via HTTP. Je ne veux pas utiliser ODBC car cela nécessiterait une configuration sur des environnements différents (UNIX ou Windows) et je n'ai pas le temps de changer nos scripts Vagrant pour cela. JDBC n'est également pas une option parce que nous fonctionnons sur NodeJS et cela nécessiterait un wrapper qui mettrait un surcoût supplémentaire sur les temps de requête.Exécution de la requête Virtuoso Interactive SQL via HTTP

Exécution OpenLink Virtuoso 7.

Répondre

1

Le service de données à 1111 est pas un service HTTP, donc curl ne peut pas être utilisé contre elle.

Vous pouvez écrire un script à exécuter sur l'implémentation iSQL HTTP accessible au < http://{{virtuoso-host:port}}/conductor/isql.vspx>. Notez que ceci est protégé par digest-auth et était destiné à l'interaction humaine, donc l'outil client peut avoir besoin d'analyser le code HTML de la réponse.

Si cela ne répond pas à vos besoins, je vous suggère de demander sur le Virtuoso Users mailing list. Il y a probablement d'autres options.

+0

Merci, c'était ce que je pensais ... il est hors de question de pirater quelque chose pour utiliser le conducteur, trop de tracas et de code fragile. Il devrait être possible d'envoyer les commandes via JDBC, mais je ne peux pas non plus le faire fonctionner derrière le wrapper node-jdbc ... Je suis bloqué avec les requêtes HTTP, qui commencent à échouer après quelques milliers de requêtes ... Voir cette question : https://stackoverflow.com/questions/46489180/closing-openlink-virtuoso-http-connections –