2016-05-08 41 views
4

舞者中是否有任何独特的请求ID?舞者独特请求ID

阿帕奇已经mod_unique_id:http://httpd.apache.org/docs/current/mod/mod_unique_id.html

PSGI /普拉克有一个中间件模块:http://search.cpan.org/~bayashi/Plack-Middleware-RequestId-0.02/lib/Plack/Middleware/RequestId.pm

但有什么天然的舞者我错过了什么?

+1

您可以在Dancer程序面前添加中间件。那问题在哪里? – simbabque

+0

这不是Debian软件包,取决于Dancer应用程序通过Plack运行。 – Sebastian

+1

[Dancer :: Request对象具有_id_属性](https://metacpan.org/source/BIGPRESH/Dancer-1.3202/lib/Dancer/Request.pm#L130),似乎是一个自动递增数字。我会尝试如何使用它。 – simbabque

回答

1

当我需要的唯一ID与Mojolicious使用,我用Data::UUID产生的线长(128位)数字与RFC 4122

我不能有任何更具体的没有你使用的一个清晰的概念但这似乎很好地工作:

#!/usr/bin/env perl 

use strict; 
use warnings; 

use Data::UUID; 

my $gen = Data::UUID -> new(); 

my $binary_uuid = $gen -> create ; 

print $gen -> to_string ($binary_uuid),"\n"; 
print $gen -> to_hexstring ($binary_uuid),"\n"; 
print $gen -> to_b64string ($binary_uuid),"\n"; 

您可以选择输出格式。如果您的应用程序对您的应用程序有用,则可以直接创建,例如:

my $gen = Data::UUID -> new(); 
my $uuid = $gen -> create_str ; 
print $uuid, "\n"; 
#reformat output 
print $gen -> to_hexstring ($uuid),"\n";