2017-07-26 119 views

回答

0

正如你可能已经知道,angular.toJson()和JSON.stringify()有一些显著的差异。

Difference between toJSON() and JSON.Stringify()

通过检查这个API参考的代码示例,它似乎JSON.stringify()应该被使用。

http://developer.samsung.com/tv/develop/api-references/samsung-product-api-references/avplay-api

var drmParam = new Object(); 
drmParam.LicenseServer = "http://license.company.com"; 
drmParam.CustomData = "mycustom"; 
playerObj.setDrm("PLAYREADY", "SetProperties", JSON.stringify(drmParam)); 

您可以尝试在你的源代码格式。

此外,本文档包含一些关于HTTP标头的讨论,虽然它关于苹果tvOS,但我可能会使用它。

Sending and Receiving AVPlayer HTTP Headers

+0

似乎这样不起作用,CustomData是否意味着HTTP头? –

+0

CustomData == HTTP标头?不能说。编辑答案。 –

0

你需要做的是设置参数是什么:

const drmParam = { 
      DeleteLicenseAfterUse: true, 
      LicenseServer: uri, 
      X-AxDRM-Message: : entitlementData.DRMToken 
     }; 

然后你需要确保是一个JSON对象,像这样:

const params = JSON.stringify(drmParam); 

之后,你有您将能够进行参数设置的对象如下:

webapis.avplay.setDrm('PLAYREADY', 'SetProperties', params); 

希望有帮助!