Javascript 使用Tizen AVPlay设置DRM许可证服务器身份验证的HTTP头
我正在使用AVPlay播放DRM内容。我需要为许可证URL设置HTTP头。我怎么做Javascript 使用Tizen AVPlay设置DRM许可证服务器身份验证的HTTP头,javascript,tizen,drm,tizen-web-app,tizen-tv,Javascript,Tizen,Drm,Tizen Web App,Tizen Tv,我正在使用AVPlay播放DRM内容。我需要为许可证URL设置HTTP头。我怎么做 webapis.avplay.setDrm('PLAYREADY', 'SetProperties', angular.toJson({ LicenseServer:entitlementData.LicenseURL, 'X-AxDRM-Message':entitlementData.DRMToken })); 我需要在HTTP头中设置X-AxDRM-Message,您可能已经知道,angu
webapis.avplay.setDrm('PLAYREADY', 'SetProperties', angular.toJson({
LicenseServer:entitlementData.LicenseURL,
'X-AxDRM-Message':entitlementData.DRMToken
}));
我需要在HTTP头中设置X-AxDRM-Message,您可能已经知道,angular.toJson和JSON.stringify有一些显著的区别 通过查看此API参考上的代码示例,似乎应该使用JSON.stringify 您可以在源代码中尝试此格式 此外,本文档还包含一些关于HTTP头的讨论,虽然它是关于Apple tvOS的,但我想可能是您的使用
您需要做的是设置参数:
const drmParam = {
DeleteLicenseAfterUse: true,
LicenseServer: uri,
X-AxDRM-Message: : entitlementData.DRMToken
};
然后您需要确保是一个JSON对象,如下所示:
const params = JSON.stringify(drmParam);
获得对象后,您将能够按如下方式进行参数设置:
webapis.avplay.setDrm('PLAYREADY', 'SetProperties', params);
希望有帮助 我知道如何将多个Http头发送到DRM许可证服务器。如果要发送多个http头,则必须用\n键将它们分隔开
let DrmParam = {};
DrmParam.LicenseServer = entitlementData.LicenseURL;
DrmParam.HttpHeader = "X-AxDRM-Message:" + entitlementData.DRMToken;
webapis.avplay.setDrm("PLAYREADY", "SetProperties", JSON.stringify(DrmParam));
你可以自己试试:
var drmParam = {
DeleteLicenseAfterUse: true,
LicenseServer: licenseServerURL,
HttpHeader: "Authorization:" + authValue + "\nMY-Ticket:" + ticketValue
};
webapis.avplay.setDrm("PLAYREADY", "SetProperties", JSON.stringify(drmParam));
这似乎不起作用,CustomData是否表示HTTP头?CustomData==HTTP头?不能说。编辑答案。虽然此代码可以回答问题,但最好解释如何解决问题,并提供代码作为示例或参考。只有代码的答案可能会令人困惑,并且缺乏上下文。在三星开发者网站上,它推荐这样做。但目前尚不清楚如何使用它。而且我还发了两个标题,我不知道怎么写。是否有相关文件/经验?嗨,你找到答案了吗?
var drmParam = {
DeleteLicenseAfterUse: true,
LicenseServer: licenseServerURL,
HttpHeader: "Authorization:" + authValue + "\nMY-Ticket:" + ticketValue
};
webapis.avplay.setDrm("PLAYREADY", "SetProperties", JSON.stringify(drmParam));