首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >POSTing多维数组

POSTing多维数组
EN

Stack Overflow用户
提问于 2014-09-13 05:01:04
回答 1查看 524关注 0票数 0

我试图将一个数组发布到一个RESTful PHP中。其想法是允许(n>0)记录,每个记录包含一个remote_id、一个dimension_id和一个度量。

这里是我的客户Python:

代码语言:javascript
复制
    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

代码语言:javascript
复制
<?php
print_r($_POST);
?>

这将返回,可以预见:

代码语言:javascript
复制
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中:

代码语言:javascript
复制
<?php
$observations = array();
$observations[] = [
    "remote_id" => "a1",
    "metric_id" => "foo",
    "metric" => 1
];
$observations[] = [
    "remote_id" => "a1",
    "metric_id" => "bar",
    "metric" => 2
];
?>

谢谢你的建议!

相同的

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-13 05:05:18

不要引用我的话(我已经很久没有做任何PHP了),但这可能只是有效的:

代码语言:javascript
复制
data = urllib.urlencode([
           ("remote_id[]", 1),
           ("dimension_id[]", 1),
           ("metric[]",metric1),
           ("remote_id[]", 1),
           ("dimension_id[]", 2),
           ("metric[]",metric2)
        ])

反正我也会试一试的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25819977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档