小编use*_*329的帖子

Hash :: Ordered与Tie :: IxHash与JSON :: XS编码

我正在尝试Hash::Ordered而不是Tie::IxHash,因为它似乎更快.

虽然Tie::IxHash工作正常,但我遇到了一些问题Hash::Ordered.关键是要对哈希值进行排序(在Perl中通常是随机的).

use Hash::Ordered;
use JSON::XS;
use Data::Dumper;

use strict;
use warnings;

my $json = JSON::XS->new;

my $oh = Hash::Ordered->new;
$oh->push('result' => { 'counter' => "123" }, 'number' => { 'num' => '55' });

my @r = $oh->as_list;

$json->pretty(1);
my $jsondata = $json->encode(\@r);
print Dumper $jsondata;
Run Code Online (Sandbox Code Playgroud)

结果很奇怪:

 [
   "result",
   {
      "counter" : "123"
   },
   "number",
   {
      "num" : "55"
   }
]
Run Code Online (Sandbox Code Playgroud)

这是一个工作示例Tie::IxHash,我试着得到相同的结果Hash::Ordered.

use Data::Dumper;
use Tie::IxHash;
use JSON::XS; …
Run Code Online (Sandbox Code Playgroud)

perl hash json

7
推荐指数
2
解决办法
493
查看次数

Mojolicious - 无法解析RESTful中的JSON

我不可能在Mojolicious中解析JSON.我更新了Mojolicious并在使用之前使用了代码,但不推荐使用JSON-> new.

my $json = Mojo::JSON->new;
my $user_request = $json->decode($c->req->body);
my $err = $json->error;
Run Code Online (Sandbox Code Playgroud)

从教程中,我发现已经添加了$ self-> req-> json,但所有POST都会导致错误和非工作代码.

 curl -H "Content-Type: application/json" --data @body.json http://localhost:3000/checkaddress
Run Code Online (Sandbox Code Playgroud)

而我的body.json看起来像这样

{
       'id': 1
}
Run Code Online (Sandbox Code Playgroud)

这是我在Mojolicious中的RESTful代码

post '/checkaddress' => sub {
my $self = shift;
my $dump = $self->dumper($self->req->json);
};
Run Code Online (Sandbox Code Playgroud)

控制台日志

[Sat Feb 20 08:23:27 2016] [debug] 200 OK (0.001688s, 592.417/s)
[Sat Feb 20 08:24:38 2016] [debug] POST "/checkaddress"
[Sat Feb 20 08:24:38 2016] [debug] Routing to a callback
[Sat Feb 20 08:24:38 2016] [debug] …
Run Code Online (Sandbox Code Playgroud)

rest perl mojolicious mojolicious-lite

3
推荐指数
2
解决办法
1309
查看次数

Google地图是否有像HERE Maps这样的Map Tile API?

Google地图是否有平铺API来接收有关建筑物的元信息?

例如:HERE Maps提供了一个瓷砖API来获取有关建筑物的信息.但数据主要仅在可用的城市.请参阅:此处是Map Tile API.

HERE Map Tile API的响应如下所示:

{ "metadata" : {
"street labels":[ { "name":"Danziger Straße", "font size":"13", "vertices": [ 38.21, -18.57, 79.17, 4.82, 88.82, 10.34, 121.50, 30.46 ] } ],
"labels":[{ "name": "111", "type":"TEXT", "bounding boxes": [ { "annotation  box":[ 146.69, 139.41, 26.62, 16.75 ] } ] }],
"city center labels":[],
"buildings":[ { "id": "1609441356716643099", "sectors": [ { "info": { "bottom height": 0, "height": 6.125 }, "vertices": [ 248, 138.69, 243, 146.91, 231, 174.84, 256, …
Run Code Online (Sandbox Code Playgroud)

maps google-maps google-maps-api-3

2
推荐指数
1
解决办法
6373
查看次数