有一种情况是我无法在 python 应用程序中预先看到它完成,我想知道这是否可以完成。
场景是这里有一个 Django 服务器(#1)充当客户端,另一个远程服务器有一个数据库(MySQL 或 SQL Server)(#2),
#1 应该使用正确的用户名和密码发送请求,#2 应该将其数据库的 json 转储响应给#1,#2 的服务器应用程序结构是可选的,但 Django 是首选,请记住我们有几个限制这里:
#2 没有有自己的数据库用户名或密码,应该只使用#1给定的用户名和密码
#2 不知道自己数据库的表结构,但应该能够将其正确转储为 json
#1 应该能够发送这样的 HttpRequest 并接收 json 文件作为 HttpResponse 并将其保存为对象(或文件)
顺便说一下,python 版本是 3.4,Django 版本是 1.8,(都是稳定的)
我认为一种方法是在#2 收到请求后执行 shell 命令,但我对此非常困惑(是否可以在 python 中运行 shell 脚本?)
最佳答案
您可以在两侧开发 2 套 api。使用 Django REST framework或 Tastypie ,您可以在服务器 #2 上创建 api 以接受来自客户端 #1 的用户名和密码,然后处理转储。正确创建转储后,服务器 #2 将使用客户端 #1 上的 api 发送 json。
由于您通过网络发送 json,我认为您不需要 shell 脚本来获取转储。 Python 还擅长系统操作。
关于python - 从远程数据库获取并存储到本地 Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32009115/