Angular 6 извлекает значение из декодированной строки base 64 - PullRequest
0 голосов
/ 15 ноября 2018

Я декодировал строку в Base64 с библиотекой xml2js и получил это значение:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="293" height="102"
 viewBox="0 0 293 102"
 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"  version="1.2" baseProfile="tiny">
<image 
width="293" 
height="102" 
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANS......pASYAAAAASUVORK5CYII=" />
</svg>

Я сократил значение кодирования, потому что оно длинное

Я заблокирован для получениязначение xlink: href, есть ли техника или библиотека для получения атрибута?

Я имею в виду, я хочу получить только это значение: data:image/png;base64,iVBORw0KGgoAAAANS......pASYAAAAASUVORK5CYII=

Спасибо

1 Ответ

0 голосов
/ 15 ноября 2018

Вы можете использовать DOMParser для анализа строки xml. Затем вы можете работать с полученным Документом как обычно:

const xmlString = `<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="293" height="102"
 viewBox="0 0 293 102"
 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"  version="1.2" baseProfile="tiny">
<image 
width="293" 
height="102" 
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANS......pASYAAAAASUVORK5CYII=" />
</svg>`;

const domParser = new DOMParser();
const xmlDoc = domParser.parseFromString(xmlString, 'application/xml');
const imageElement = xmlDoc.getElementsByTagName('image')[0];
const hrefAttr = imageElement.getAttribute('xlink:href');
console.log(hrefAttr);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...