2016-10-11 69 views
0

我試圖從MPD文件(這是一個XML文件)中的屬性獲取值,並將其傳遞給另一個函數。直到現在沒有運氣。我會感謝任何幫助。如何從XML/MPD文件獲取屬性值?

值我在尋找的<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> 

回答

0

有一個在你提到的XML部分沒有default_KID,但你可以使用馬林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 
+0

對不起,沒有注意到它被隱藏了。 –