Python相当于PHP Post

时间:2016-10-12 09:07:44

标签: php python

我正在使用遗留系统,之前的程序员已经离开了。这是他离开的测试,我不知道如何使用Python模仿他的测试。

以下是test.php

var tHost = "10.1.10.123";
var tExiname = "CloudHM TEST123";
var tIncname = "INC012345";
var tHWname = "aa 1111 0";
var tHwattr = "all";
var tStatus = 0;
var tCteatedat = "2016-05-23 12:20:42";
var d = new Date,
tUpdateat = [d.getFullYear(),
             d.getMonth()+1,
             d.getDate()].join('-')+' '+
          [d.getHours(),
           d.getMinutes(),
           d.getSeconds()].join(':');
var arr =  [{ host: tHost, host_name: tExiname, component_type: tHWname, component_status: tStatus, incident_created: tUpdateat }];
var arr2 =JSON.stringify(arr)
$.ajax({
    url: 'http://customer.beenets.net/api/cloudhm/api.php' ,
    type: 'POST',
    data: { params: arr2 },
    success: function(msg) {
        //ShowOutput(msg);
        alert(JSON.stringify(arr, null, 4));
    }
})

我试过这个。响应是200,但PHP服务器读取无负载

notification_data = [{
            "host": i.host,
            "host_name": i.host_name,
            "incident_created": i.incident_created,
            "component_type": i.component_type,
            "component_status": i.component_status
        }]
        response = requests.post(NOC_BEENETS_URL, data=json.dumps(notification_data))

然后我尝试将params键放在它前面

notification_data = [{
    "params":{
        "host": i.host,
        "host_name": i.host_name,
        "incident_created": i.incident_created,
        "component_type": i.component_type,
        "component_status": i.component_status
    }
}]
response = requests.post(NOC_BEENETS_URL, data=json.dumps(notification_data))

服务器返回200并再次读取无效负载。

1 个答案:

答案 0 :(得分:2)

编辑:

notification_data = [{
        "host": i.host,
        "host_name": i.host_name,
        "incident_created": i.incident_created,
        "component_type": i.component_type,
        "component_status": i.component_status
    }]
r = requests.post(NOC_BEENETS_URL, data = {'params': json.dumps(notification_data)})