我有一个多级哈希,其中有用户头像的 URL。
我正在尝试使用“Jane Doe image ”制作一个单元格,但是当代码运行时,URL 正在发生变化。当我将其插入 Embperl 模板时,
https://foo.com/useravatar?size=small&id=11111
变成
https://foo.com/useravatar%3Fsize%3Dsmall%26id%3D11111
如您所见,特殊字符被编码,因此找不到图像。你如何解决这个问题?
use strict;
use warnings;
use Embperl qw( );
our $issue = {
avatar => {
url => 'https://foo.com/useravatar?size=small&id=11111',
},
};
my $template = <<'__EOI__';
[+ $issue->{avatar}{url} +]
<img src="[+ $issue->{avatar}{url} +]">
__EOI__
Embperl::Execute({
input => \$template,
package => __PACKAGE__,
});
这会产生:
https://foo.com/useravatar?size=small&id=11111
<img src="https://foo.com/useravatar%3Fsize%3Dsmall%26id%3D11111">
当 URL 插入到src
属性之外时,它会被正确转义。但是当它被插入到src
属性中时,它会被破坏。