javascript - 将 JSON 与 AJAX 和 Python 数据库结合使用

标签 javascript python json ajax database

我是 python 新手,正在尝试通过 python 访问数据库并使用 AJAX 在 JSON 数组中返回一些结果。
我通过返回 JSON 列表并使用 js 发出警报来测试它。当我不使用数据库连接时它可以工作,但是一旦我添加它,js 警报也会停止。当我运行文件 getSchedule.py 时,数据库连接似乎工作正常。数据库连接位于单独的文件 webairdb.py
有人可以帮我找出问题所在吗?

getSchedule.py

#!D:/Programming/Software/python3.4.4/python
import sys, json,cgi, cgitb, mysql.connector, webairdb

cgitb.enable()
fs = cgi.FieldStorage()

sys.stdout.write("Content-Type: application/json")

sys.stdout.write("\n")
sys.stdout.write("\n")

conn = webairdb.getConnection()
conn.close()

listr = [11111]

sys.stdout.write(json.dumps(listr))
sys.stdout.write("\n")

sys.stdout.close()

webairdb.py

#!D:/Programming/Software/python3.4.4/python
import cgi, cgitb, imp, mysql.connector

host ="localhost"
db = "webair"
user = "root"
password = ""

def getConnection():
    conn =   mysql.connector.connect(user=user,password=password,host=host,database=db)
    if conn.is_connected():
        print("aaaqqqq")
    return conn

最佳答案

webairdb.py中,您写入sys.stdout(这就是print所做的)-有效地破坏json输出。 (您可能想在浏览器中按 F12 查看输出)

因此,只需将其删除并写入 sys.stderr 或使用 logging相反。

您还应该考虑使用wsgi而不是cgi,它使事情变得更容易一些(根本不需要关心打印)或像bottle这样的框架或cherrypy .

关于javascript - 将 JSON 与 AJAX 和 Python 数据库结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38802638/

相关文章:

javascript - 在 JavaScript 中,有没有办法生成单个变量以在项目中的 .js 文件之间共享?

javascript - 数据库插入后刷新 View React Redux

python - Django session 管理

javascript - 使用 Node.js 和 Google Cloud Storage 压缩图像

javascript - Ember 组绑定(bind)

python - APScheduler 关闭后无法安排新的 future

python - 未提供值时命令行参数的默认值

java - 无法解析 intellij 中的符号 jsonobject

java - 如何使用 Jersey JSON POJO 支持?

java - 如何将 JSON 数组作为 URL 中的参数传递