我在使用 angularjs $http 请求调用 python 函数时遇到问题。 我有一个像这样的服务器上的 python 函数
import cgi, cgitb
data= cgi.FieldStorage()
name = data.getvalue("name");
age = data.getvalue("age");
def printinfo( name, age ):
print "Name: ", name
print "Age ", age
return name,age
我还包括了 cgi,我的 javascript 代码是
angular.module('app1',[])
.controller('ctrl',['$scope','$http' ,function ($scope,$http) {
$scope.bin = 'examp';
$scope.go = function () {
var url = "http://localhost/dump/test/test.py";
var bad =$http({
url :url ,
method:'POST',
data:{"name":"kumar" , "age":21}
}).success(function(data){
alert("working");
});
}
}])
我的 javascript 代码能够调用 http://localhost/dump/test/test.py但即使我在其中包含cgi,它也会显示为文档.. 请指导我,你们也可以告诉我这是将值发送到服务器的正确方法吗,即我可以通过仅发送姓名和年龄来调用函数打印信息,还是也应该发送函数名称。如果是,请告诉我如何通过它..
提前致谢..
最佳答案
可能您的网络服务器不知道如何处理 .py 文件。您需要配置网络服务器来处理 python。如果未配置,请尝试以下操作。
https://www.linux.com/community/blogs/129-servers/757148-configuring-apache2-to-run-python-scripts
但是更好的方法是使用一些 python 框架创建一个 Web 应用程序并通过 Web 服务器公开 url。如果你对此感兴趣,那么我建议你学习flask python框架。
关于javascript - 使用 angularjs 从本地计算机调用服务器中的 python 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32984895/