所以我已经建立了对angularjs应用程序的简单架构的相当不错的理解,调用$ http并发布到php页面,然后接收数据。
我想知道的是,如何使用python执行相同类型的功能。是否有可能让python行为相同,自包含脚本文件接受post数据和echo json回来?
$username = $_POST['username'];
在脚本开头输入变量赋值,并且:
echo json_encode(response);
键入响应。
我想为我公司的某些内部工具使用Python,因为它为远程运行PowerShell脚本提供了更好的库(因为这些工具都是linux托管的),并且整体上只有符合我需求的库。我很难找到如何设置这个问题的简明答案。
--- ------ EDIT
所以我使用以下信息设置了一个简单的例子。
角度: var app = angular.module(" api");
app.controller("MainController", ["$scope","$http",MainController]);
function MainController($scope,$http){
$http.post('/api',{test: "hello"})
.then(function(response){
console.log(response.data);
})
}
烧瓶: 来自flask导入Flask,请求 导入json
app = Flask(__name__)
@app.route('/api', methods=['POST', 'GET'])
def api():
if request.method == 'POST':
request.data
return 'You made it' # Just so I originally could see that the flask page
if __name__ == "__main__":
app.run()
我获得了该网址的404。如果我改变角度来看看本地主机:5000 / api' (我的烧瓶应用程序正在运行),它给出了错误#34;不支持的URL类型"。
我看到当我做第一个案例时,它试图查看http://localhost/api,这是正确的!除了港口。这就是我尝试指定端口的原因。
有关下一步的任何建议吗?
答案 0 :(得分:3)
使用烧瓶。
您可以将您的应用程序托管在烧瓶"服务器"并使用python处理返回您喜欢的内容。
使用文档设置一条路线,您可以使用jquery或其他方式发布数据,然后在路线上可以执行python工作,并在需要时将JSON返回到角度应用程序。
from flask import request
@app.route('/test', methods=['POST', 'GET'])
def test():
if request.method == 'POST':
print request.data['your_field']
return your_json_data