Comment exécutez-vous un script Python côté serveur en utilisant jQuery?
J'ai une question très simple fichier Python, appelé python1.py dont le contenu est:
f = open('C:\\Temp\\test.txt', 'w')
f.write('Succeeded')
f.close()
Je souhaite l'exécuter à partir de JavaScript, comme suit:
jQuery.ajax({
type: "POST",
url: "/cgi-bin/python1.py",
success: function (msg) {
alert("Data Saved: " + msg);
}
});
Cependant, tout ce qui arrive est que je reçois une alerte en me montrant le contenu du script Python. Le fichier C:\Temp\test.txt n'a pas créé, donc clairement le Python n'a pas été exécutée.
Comment puis-je persuader le code à exécuter le script Python au lieu de simplement de le lire?
source d'informationauteur Charles Anderson
Vous devez vous connecter pour publier un commentaire.
Êtes-vous en mesure d'exécuter le script directement depuis le navigateur. Cela ressemble plus à un serveur web config problème que celui de jquery
Il vous suffit de configurer votre serveur web pour l'exécution de votre *.py, scripts, au lieu de les servir en tant que texte brut.
Si vous utilisez Apache comme serveur web, vous devez activer mod_python ou mod_wsgi.
EDIT:
Puisque vous utilisez Apache, vous pouvez consulter l'article suivant, qui décrit brièvement comment configurer le mod_python module:
Vous pouvez également utiliser le projet opensource de Pico. C'est vraiment un moyen élégant de l'appel de côté de serveur de code Python à partir du code Javascript coté client.
L'auteur a fourni quelques exemples simples ici https://github.com/fergalwalsh/pico/wiki/Example-1:-Hello-World
Si votre script est simple, vous serait mieux de l'utilisation de scripts CGI sur le serveur plutôt que de mod_python ou mod_wsgi comme suggéré par d'autres. Pour plus de détails sur la façon de configurer Apache pour CGI Python et simple script exemples, voir:
http://webpython.codepoint.net/cgi_tutorial