Amp html amp同意和IAB同意字符串实现详细信息
我们已经根据IAB TCFv2完成了CMP的开发,并且正在努力将其与AMP集成,因为AMP同意不能使同意字符串可用于CMP提示符和ads 发布者代码:Amp html amp同意和IAB同意字符串实现详细信息,amp-html,amp-ad,iab,Amp Html,Amp Ad,Iab,我们已经根据IAB TCFv2完成了CMP的开发,并且正在努力将其与AMP集成,因为AMP同意不能使同意字符串可用于CMP提示符和ads 发布者代码: <amp-consent id="myUserConsent" layout="nodisplay"> <script type="application/json">{ "consentInstanceId": "consent-id", "consentRequired": true, "pro
<amp-consent id="myUserConsent" layout="nodisplay">
<script type="application/json">{
"consentInstanceId": "consent-id",
"consentRequired": true,
"promptUI": "consentDialog",
"postPromptUI": "post-consent-ui",
"checkConsentHref": "https://open-cmp.local:5003/consent/check",
"onUpdateHref": "https://open-cmp.local:5003/consent/update"
}</script>
<div class="popupOverlay" id="consentDialog">
<amp-iframe layout="fill" src="https://open-cmp.local:5003/demo/amp/cmp-frame.html"
sandbox="allow-scripts allow-same-origin">
<div placeholder>Loading</div>
</amp-iframe>
</div>
<div id="post-consent-ui">
<button on="tap:myUserConsent.prompt()">Update Consent</button>
</div>
根据,当用户想要进行更改时,amp ad和CMP提示符都可以使用同意字符串:
传递给iframe的客户端信息
创建iframe时,以下信息将通过name属性传递给iframe
但是window.name始终设置为包含iframe名称的普通字符串,即amp_iframe0,没有类似JSON的数据。我还尝试了window.context,它总是未定义的
第二个挑战是,如何确保同意字符串在amp ad和其他组件中可用?我尝试了一个放大器iframe,但是同意字符串不存在
网络上的所有文章、讨论和文档都有点混乱/过时/不一致,如果有人能给我指出正确的方向,我真的很感激。不知道这是否仍然是开放的,但on-AMP-ad将在ampproject.net上托管一个iframe 正如您在这里看到的,AMP使用“name”内部的JSON提要来传输AMP ad标记的数据: 一旦属性“同意时的数据块”和cmp中存在amp ad,则此iframe的window.context将具有tcf字符串的属性“InitialApproverValue” 但我想向您指出github上的这个问题: 在这种情况下,您应该能够像在常规网络中一样,提供一个_tcfapilotator框架,希望作为消费者,我希望这样使用它,因为这将是IAB指定的方式
window.parent.postMessage({
type: 'consent-response',
info: "the consent string",
action: 'accept'
}, '*');