我试图将一个数组发布到一个RESTful PHP中。其想法是允许(n>0)记录,每个记录包含一个remote_id、一个dimension_id和一个度量。
这里是我的客户Python:
data = urllib.urlencode([
("remote_id", 1),
("dimension_id", 1),
("metric",metric1),
("remote_id", 1),
("dimension_id", 2),
("metric",metric2)
])
response = urllib2.urlopen(url=url, data=data)这是我的服务器端PHP
<?php
print_r($_POST);
?>这将返回,可以预见:
Array
(
[remote_id] => 1
[dimension_id] => 2
[metric] => 16
)在我看来,我似乎在用最后的值覆盖remote_id、dimension_id和度量的每个实例,这并不令人惊讶,因为它们都使用相同的名称。
做这件事的正确方法是什么?我可以看到一个带有唯一键(1_remote_id、1_dimension_id、1_metric + 2_remote_id、2_dimension_id、2_metric)的可怕方法,但它的扩展效果并不好。
我想我想要的是类似PHP的东西,但是在Python中:
<?php
$observations = array();
$observations[] = [
"remote_id" => "a1",
"metric_id" => "foo",
"metric" => 1
];
$observations[] = [
"remote_id" => "a1",
"metric_id" => "bar",
"metric" => 2
];
?>谢谢你的建议!
相同的
发布于 2014-09-13 05:05:18
不要引用我的话(我已经很久没有做任何PHP了),但这可能只是有效的:
data = urllib.urlencode([
("remote_id[]", 1),
("dimension_id[]", 1),
("metric[]",metric1),
("remote_id[]", 1),
("dimension_id[]", 2),
("metric[]",metric2)
])反正我也会试一试的。
https://stackoverflow.com/questions/25819977
复制相似问题