Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ajax将数据从javascript发布到python_Javascript_Python_Ajax - Fatal编程技术网

ajax将数据从javascript发布到python

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

我试图通过post通过ajax将javascript代码中的dict发送到python脚本。以下是js:

    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