jquery – AJAX发布到Python cgi

前端之家收集整理的这篇文章主要介绍了jquery – AJAX发布到Python cgi前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Possible Duplicate:
07000

我有Apache2安装和Python工作.

我遇到了问题.我有两页.

一个是Python页面,另一个是带有JQuery的Html页面
我可以将Src改为google jquery链接.

有人可以告诉我如何让我的ajax帖子正常工作.

$(function()
    {
        alert('Im going to start processing');

        $.ajax({
            url: "saveList.py",type: "post",data: {'param':{"hello":"world"}},dataType: "application/json",success : function(response)
            {
                alert(response);
            }
        });
    });

和Python代码

import sys
import json

def index(req):
    result = {'success':'true','message':'The Command Completed Successfully'};

    data = sys.stdin.read();

    myjson = json.loads(data);

    return str(myjson);

解决方法

这是一个示例html文件和附带的python CGI脚本,可以帮助您:

使用这个HTML:

<html>
    <head>
        <Meta http-equiv="content-type" content="text/html; charset=utf-8">

        <title>test</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
        <script>

            $(function()
            {
                $('#clickme').click(function(){
                    alert('Im going to start processing');

                    $.ajax({
                        url: "/scripts/ajaxpost.py",datatype:"json",data: {'key':'value','key2':'value2'},success: function(response){
                            alert(response.message);
                            alert(response.keys);
                        }
                    });
                });
            });

        </script>
    </head>
    <body>
        <button id="clickme"> click me </button>
    </body>

</html>

这个脚本:

#!/usr/bin/env python

import sys
import json
import cgi

fs = cgi.FieldStorage()

sys.stdout.write("Content-Type: application/json")

sys.stdout.write("\n")
sys.stdout.write("\n")


result = {}
result['success'] = True
result['message'] = "The command Completed Successfully"
result['keys'] = ",".join(fs.keys())

d = {}
for k in fs.keys():
    d[k] = fs.getvalue(k)

result['data'] = d

sys.stdout.write(json.dumps(result,indent=1))
sys.stdout.write("\n")

sys.stdout.close()

单击按钮后,您可以看到cgi脚本返回:

{
 "keys": "key2,key","message": "The command Completed Successfully","data": {
  "key2": "value2","key": "value"
 },"success": true
}

猜你在找的jQuery相关文章