ajax将数据从javascript发布到python
我试图通过post通过ajax将javascript代码中的dict发送到python脚本。以下是js:ajax将数据从javascript发布到python,javascript,python,ajax,Javascript,Python,Ajax,我试图通过post通过ajax将javascript代码中的dict发送到python脚本。以下是js: function foo(){ context = { 'var1': val1, 'var2': val2 } $.ajax({ url:'/pyfoo' type: 'POST' data: context, success: fun
function foo(){
context = {
'var1': val1,
'var2': val2
}
$.ajax({
url:'/pyfoo'
type: 'POST'
data: context,
success: function(){
...
}
});
我需要从python中的上下文中提取var1和var2,但它无法通过。任何帮助都将不胜感激
我在python中尝试了一些方法:
def pyfoo():
data = json.loads('context')
发件人:
您是否
json.loads
ing在Python中获得的字符串?你是怎么得到它的?@JaredSmith,我尝试过json,但我对json知之甚少。我得到的错误如下:json.decoder.jsondecoderror:Expecting value:line 1 column 1(char 0)
json
本质上只是一种将字符串键控的hashmap序列化为字符串的格式。这意味着当它到达目的地时,必须对其进行反序列化。它似乎也没有被客户机代码编码,试试data:JSON.stringify(context),
Huh<代码>json.loads('context')?为什么要在服务器端代码中引用客户端变量的名称?您使用的是什么HTTP服务器?请参阅python函数应该使用函数处理程序来处理JSON响应。def函数(处理程序):打印处理程序。获取参数等等。。。如果我错了,请告诉我。一般来说,tornado/django框架采用如下方式。。每当ajax调用url处理程序时,该函数都会简单地为您完成这项工作。您使用的是什么框架?
def pyfoo() :
try:
data = json.loads(request.data)
print(data)
return "Success" 200
except ValueError:
error('Unable to parse JSON data from request.')
return "Error" 400