Hallo,
ich baue gerade an meiner ersten Python Webanwendung. Jetzt stehe ich an dem Punkt wo ich gerne AJAX benutzen würde um das zu tun:
http://www.easy-coding.de/wiki/html-aja ... gkeit.html
Zur Demo
Leider stelle ich fest, dass ich nicht verstehe wie ich da mit Bottle/python vorgehen muss.
Toll wäre, wenn mir jemand Beispielcode zur Verfügung stellen könnte, aus dem ersichtlich wird, wie man Bottle mit AJAX benutzt.
Gruß
Herr Lehmann
Bottle und AJAX
Im Prinzip ueberlegst du dir welche Informationen du haben willst und machst einfache eine Route ueber die du die per JSON abfragen kannst, bedenke dabei dass du keine Listen direkt zurueckgeben darfst da es dann valides Javascript ist und man den Array Konstruktor ueberschreiben kann wodurch deine API anfaellig fuer XSS Attacken wird.
- noisefloor
- User
- Beiträge: 4149
- Registriert: Mittwoch 17. Oktober 2007, 21:40
- Wohnort: WW
- Kontaktdaten:
Hallo,
soll beides von Bottle erlegit werden?
Dann brauchst du zwei Route: Eine, die den HTML-Code liefert (entweder per Template oder per static_file) und eine, die JSON liefert. Wie das geht steht in der Bottle-Doku.
Gruß, noisefloor
soll beides von Bottle erlegit werden?
Dann brauchst du zwei Route: Eine, die den HTML-Code liefert (entweder per Template oder per static_file) und eine, die JSON liefert. Wie das geht steht in der Bottle-Doku.
Gruß, noisefloor
-
- User
- Beiträge: 81
- Registriert: Samstag 14. August 2010, 22:20
Ich habe mittlerweile selbst noch ein bißchen rumprobiert und auch nach Beispielen im Internet gesucht. Das einzige was ich gefunden habe, war dieses:
Funktioniert nur nicht.
Ich würde mich sehr freuen, wenn sich jemand die Mühe macht mein Beispiel aus dem StartPosting nach Python zu übertragen, falls es nicht zuviel mühe macht.
Danke
Gruß
Herr Lehmann
Code: Alles auswählen
# coding:utf8
from bottle import route, run, request
@route('/')
def main():
return """
<html>
<script type="text/javascript"
src="http://code.jquery.com/jquery-1.4.2.min.js" />
<script type="text/javascript" language="javascript">
function sendjs() {
$.post('/json',
{ a:5, b:'test' },
function(data) {
alert('a=' + data.a + ', b=' + data.b);
},
'json'
);
};
</script>
<body>
<input OnClick="sendjs()" type="submit" >
</body></html>
"""
@route('/json', method = "POST")
def myGetJson():
a = request.POST['a']
b = request.POST['b']
return {'a':b, 'b':a }
run(host='localhost', port=8090)
Ich würde mich sehr freuen, wenn sich jemand die Mühe macht mein Beispiel aus dem StartPosting nach Python zu übertragen, falls es nicht zuviel mühe macht.
Danke
Gruß
Herr Lehmann
-
- User
- Beiträge: 81
- Registriert: Samstag 14. August 2010, 22:20
Ich habs mal anders eingebunden aber es geht trotzdem nicht. Komme mit javascript und Bottle nicht so wirklich weiter. Es wäre klasse wenn es dazu ein konkretes funktionierendes beispiel gäbe.
Gruß
Gruß
-
- User
- Beiträge: 81
- Registriert: Samstag 14. August 2010, 22:20
Ich hab den Fehler gefunden und ein einfaches Jquery Beispiel funktioniert jetzt auch ganz gut. Jetzt kommt der Ajax Part... Mal schauen ob ich es heute hinbekomme.
-
- User
- Beiträge: 24
- Registriert: Freitag 10. September 2010, 10:12
@ Herr Lehman,
schau dir doch mal http://www.python-forum.de/viewtopic.php?f=7&t=24698 an!
Hab denke ich, so ein ähnliches problem gehabt wie du!
vllt. hilft dir dass weiter falls du evtl. fragen hast pn!
mfg thoto
schau dir doch mal http://www.python-forum.de/viewtopic.php?f=7&t=24698 an!
Hab denke ich, so ein ähnliches problem gehabt wie du!
vllt. hilft dir dass weiter falls du evtl. fragen hast pn!
mfg thoto
Nobody is perfect!