Rael Max avatar Rael Max committed 82e8784

simple server returning data on json and xml

Comments (0)

Files changed (2)

Add a comment to this file


Binary file removed.

 # -*- coding: utf-8 -*-
 import sqlite3
-from bottle import route, run, request
+from bottle import route, run, request, response
 def get_data(datatype, limit):
-    return 'haha'
+    conn = sqlite3.connect('base.db')
+    c = conn.cursor()
+    c.execute("select * from contact limit %s" % limit)
+    data = c.fetchall()
+    json = {}
+    xml = '<data>'
+    if datatype == 'xml':
+        for item in data:
+            reg = '<id>%s</id><name>%s</name><email>%s</email><date>%s</date>' % \
+                    (item[1], item[2], item[3], item[0])
+            xml += '<item>%s</item>' % reg
+        xml += '</data>'
+        response.headers['Content-Type'] = 'xml/application'
+        return xml
+    elif datatype == 'json':
+        for item in data:
+            json[item[2]] = item
+        return json
+    else:
+        return 'Escolha um formato disponível: xml ou json'
-run(server='gunicorn', port=8001)
+run(server='gunicorn', port=8001, reloader=True)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.