我想为Facebook平台制作HTML可播放的广告,并在其中显示用户头像。有可能吗?
According to docs可播放的广告不得发出任何HTTP请求。
所以我无法从可播放广告发出任何身份验证请求。在这种情况下,它似乎也不支持Facebook SDK
当观众互动选择号召性用语时,广告中的可播放代码也必须使用JavaScript函数FbPlayableAd.onCTAClick()
。
是否有关于FbPlayableAd
方法的可靠文档?
答案 0 :(得分:4)
除了“您需要调用函数”之外,Facebook似乎没有提供任何有用的信息。
投放可播放的内容后,此<script>
将被注入<head>
中:
const FbPlayableAd = {
onCTAClick() {
window.parent.postMessage("onCTAClick", "*");
},
};
要避开丢失的FBPlayableAd
对象,此处的解决方案是在<script>
标签后插入以下<body>
:
<script type="text/javascript">
window.FBPlayableOnCTAClick = () => {
(typeof FbPlayableAd === 'undefined') ?
alert('FBPlayableAd.onCTAClick') : FbPlayableAd.onCTAClick();
}
</script>
然后CTA按钮具有此onClick:
onClick={() => window.FBPlayableOnCTAClick()}
这使我们可以解决Babel抱怨缺少FbPlayableAd的问题,并且可以在测试中正常运行,并且在上传到Facebook的Playable Preview工具中也可以正常运行。