小编mil*_*esb的帖子

Perl Authen :: OATH和Google身份验证器 - 不兼容?

我的理解(可能显然是错误的)是Authen :: OATH模块与Google Authenticator App生成的totp代码兼容.但它对我不起作用,而类似的红宝石代码则有用.我们在这里是一个perl商店,如果有人能指出我正确的方向来帮助我免于逐行挖掘两个库,那将会有所帮助.

这款红宝石兼容:

require 'rubygems'

require 'rotp'

secret = "bqagf6ohx4rp3a67"

puts ROTP::TOTP.new(secret).now.to_s
Run Code Online (Sandbox Code Playgroud)

这个perl没有:

use Authen::OATH;

my $oath = Authen::OATH->new();

my $totp = $oath->totp(" bqagf6ohx4rp3a67" );

print "$totp\n";
Run Code Online (Sandbox Code Playgroud)

perl google-authenticator

6
推荐指数
1
解决办法
1794
查看次数

Flow类型定义上的这个'+'前缀是什么?

为什么"counter"和"type"在以下摘录中以加号为前缀?

export type counterStateType = {
  +counter: number
};

type actionType = {
  +type: string
};
Run Code Online (Sandbox Code Playgroud)

(这段代码取自我试图解决的电子反应样板应用程序.我已经用Google搜索和binged,我设法建立的是类型来自"Flow").

javascript flowtype

5
推荐指数
0
解决办法
93
查看次数

为什么Perl XML :: LibXML将UTF8更改为8859-1?

有了这个输入文件

<?xml version="1.0" encoding="UTF-8"?>
<entry>
   <title>ú</title>
</entry>
Run Code Online (Sandbox Code Playgroud)

和这段代码,

my $raw_xml = read_file("test.xml", binmode => 'raw');
print "$raw_xml\n";
$raw_xml =~ /<title>(.*?)</;
print "Regex finds [$1]\n";      # prints u+accent to UTF8 terminal

my $dom  = XML::LibXML->load_xml(string => $raw_xml);
my $xpc = XML::LibXML::XPathContext->new($dom);
my ($entry) = $xpc->findnodes('entry');
my $title = $xpc->findvalue('title', $entry) || '';

print "title is now [$title]\n"; # prints garbage character to UTF8 terminal, u+accent to ISO-8859-1 terminal
Run Code Online (Sandbox Code Playgroud)

哪里/为什么是完美的utf8被翻译成8位字符集之一(我假设它是8859-1,可能是cp1252等)?

我通过谷歌发现的一切都表明它应该从头到尾都是utf8.但显然不是.

注意:如果我使用binmode在文件句柄上打开文件并将其传递给load_xml,则行为完全相同; 我碰巧在实际代码中将xml存储在内存中 - 这也意味着我可以使用正则表达式进行验证.

xml perl utf-8

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

标签 统计

perl ×2

flowtype ×1

google-authenticator ×1

javascript ×1

utf-8 ×1

xml ×1