我需要将一堆自定义参数传递到 Google DFP 广告调用中。如果广告请求超过 2,000 个字符,则传递给它的某些参数会被截断。我想知道当前调用需要多少个字符并手动截断一些值,而不是谷歌为我做。如何获得通话时长?
问问题
599 次
2 回答
1
我知道这是一个很老的问题,但几个月前我遇到了同样的问题以及关于 URL 的其他几个问题,所以我想分享一下。
在显示调用之前将以下内容添加到您的代码中。
这是做什么的:
/**
* ##logUrl
* Logs the ID of the ad and the length of its URL at render time.
* @param {Event} e - GPT's slotRenderEnded event.
*/
logUrl = function(e) {
var str = e.slot.getSlotId().getDomId() +
' URL length: ' + e.slot.getContentUrl().length;
console.log(str);
}
googletag.cmd.push(function () {
googletag.pubads().addEventListener('slotRenderEnded', logUrl);
});
解释
- slotRenderEnded:此事件在广告的 Iframe 构建后立即触发。
- slot:返回 google 所知道的关于此广告的所有信息。
- getSlotId:从 googletag 对象返回槽的长标识符。
- getDomId:返回此广告容器的 html ID。
- getContentUrl:返回我们想要的 URL。
于 2015-08-30T02:38:55.987 回答
0
使用 jQuery 执行此操作的一个非常简单的方法是:
var dfpRequestLength = jQuery('script[src*="gampad/ads"]').attr('src').length;
这假设很多,但适用于我们的 DFP 实例。
于 2015-03-04T23:23:00.613 回答