0

我试图从 MPD 文件(一个 XML 文件)的属性中获取值,以将其传递给另一个函数。直到现在都没有运气。我会很感激任何帮助。

我正在寻找的价值观<ContentProtection>default_KID

XML 文件:

<ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc" cenc:default_KID="63F31554-C8A7-93D7-B131-7C01612D8D91"/>
<ContentProtection schemeIdUri="urn:uuid:5E629AF5-38DA-4063-8977-97FFBD9902D4" value="Marlin">
    <cenc:pssh>AAAAKHBzc2gAAAAAXmKa9TjaQGOJd5f/vZkC1AAAAAgAAAAIbWFybA==</cenc:pssh>
    <mas:MarlinContentIds>
        <mas:MarlinContentId>urn:marlin:kid:42eb30ca4481312db87a91119d6f0b28</mas:MarlinContentId>
    </mas:MarlinContentIds>
</ContentProtection>
4

1 回答 1

0

default_KID您提到的 XML 部分中没有,但您可以使用 Marlin KID。DOMParser可用于解析 XML 字符串:

var xml = '<ContentProtection schemeIdUri="urn:uuid:5E629AF5-38DA-4063-8977-97FFBD9902D4" value="Marlin"><cenc:pssh>AAAAKHBzc2gAAAAAXmKa9TjaQGOJd5f/vZkC1AAAAAgAAAAIbWFybA==</cenc:pssh><mas:MarlinContentIds><mas:MarlinContentId>urn:marlin:kid:42eb30ca4481312db87a91119d6f0b28</mas:MarlinContentId></mas:MarlinContentIds></ContentProtection>';

var parser = new DOMParser();
var parsedXml = parser.parseFromString(xml, 'application/xml');
parsedXml.getElementsByTagName('MarlinContentId')[0].textContent
于 2016-10-12T05:29:08.917 回答