将数据从后端传递到前端?

时间:2018-01-25 11:21:59

标签: python mongodb cherrypy

我正在使用python中的一个简单的Web应用程序,我在其中填充了一个MongoDB数据库,并尝试将数据从其后端发送到前端并显示数据。但是,不知何故,我已经设法实现从MongoDB获取数据部分,我无法将其检索到前端并在dom上显示。 关于链接和教程的搜索已经足够了。任何指向正确方向的点也会非常有帮助。 这是我的后端代码。

    import cherrypy
import os.path
from pymongo import MongoClient
import json
from bson import BSON
from bson import json_util

cherrypy.config.update({'server.socket_port': 3000})
cherrypy.engine.restart()

data = []


class Dbextractor(object):

    @cherrypy.expose
    def index(self):
        return open('index.html')

    @cherrypy.tools.json_out()
    def toshow(self):
        i = 0
        client = MongoClient('mongodb://localhost:27017')
        admin = client.stock_data
        cursor = admin.col.find({})
        for document in cursor:
            # print(document['SC_NAME'])
            data.append(document)
# data.update({i: {json.dumps(document, default=json_util.default)}})
# i = i+1
        return data[0]

    @cherrypy.expose
    def shutdown(self):
        cherrypy.engine.exit()


if __name__ == '__main__':
    conf = {
        '/': {
            'tools.sessions.on': True,
            'tools.staticdir.root': os.path.abspath(os.getcwd())
        },
        '/toshow': {
            'request.dispatch': cherrypy.dispatch.MethodDispatcher(),
            'tools.response_headers.on': True,
            'tools.response_headers.headers': [('Content-Type', 'json')],
        }

    }
    webapp = Dbextractor()
    cherrypy.quickstart(webapp, '/', conf)

这是我正在尝试使用的javascript。

     var request = new Request({
  url: '/toshow',
  method: 'GET'
});
fetch(request).then(function (value) {
    console.log(value)
});

python中返回的数据返回一个包含dict内容的列表。

0 个答案:

没有答案