禁止不尝试在广告定位中设置键值

时间:2019-10-21 05:18:02

标签: javascript prebid.js header-bidding prebid

我正在尝试在我的网站上设置prebid,并使用prebid网站上的示例代码。目前,我已经安装了appnexus和Adx,这是控制台中的流程: https://i.imgur.com/qme7k26.png

如上图所示,除了没有尝试设置键值之外,流程是完美的。

预期流量应如下所示: https://i.imgur.com/4oPnacA.png

我不知道是什么原因造成的。

下面是我的代码:

        var unit_728x90 = [
            [728, 90],
            [600, 300]
        ];
        var unit_300x250 = [
            [336, 280],
            [300, 250],
            [300, 100],
            [320, 50]
        ];
        var unit_320x50 = [
            [320, 50]
        ];
        var unit_300 = [
            [300, 250]
        ];
        var PREBID_TIMEOUT =2000;
        var FAILSAFE_TIMEOUT = 3000;
        var ASSERT_TIMEOUT = 1000;

        var adUnits = [{
                code: '21791303143/upl_belowslidem_300x250',
                mediaTypes: {
                    banner: {
                        sizes: unit_300x250
                    }
                },
                bids: [{
                    bidder: 'appnexus',
                    params: {
                        placementId: 17076422
                    }
                }]
            }     
        ];

        var googletag = googletag || {};
        googletag.cmd = googletag.cmd || [];
        googletag.cmd.push(function() {
            googletag.pubads().disableInitialLoad();
        });
         if(window.screen.width < 769){
            googletag.cmd.push(function() {

             });
         }else{
            googletag.cmd.push(function() {
            googletag.defineSlot('/21791303143/upl_belowslidem_300x250', unit_300x250, 'div-side').addService(googletag.pubads());
            googletag.pubads().enableSingleRequest();
            googletag.enableServices();
            });
        }

        var pbjs = pbjs || {};
        pbjs.que = pbjs.que || [];
        pbjs.que.push(function() {
            pbjs.setConfig({ 
                priceGranularity: "high",
                enableSendAllBids: false,
                useBidCache: true
            })
        });

        pbjs.que.push(function() {
            pbjs.addAdUnits(adUnits);
            pbjs.requestBids({
                bidsBackHandler: initAdserver;
                 }
            });
        });

         function initAdserver() {
            if (pbjs.initAdserverSet) return;
            pbjs.initAdserverSet = true;
            googletag.cmd.push(function() {
                pbjs.que.push(function() {
                    pbjs.setTargetingForGPTAsync('div-side');
                    googletag.pubads().refresh();
                });
            });
        }
        setTimeout(function() {
            initAdserver();
        }, FAILSAFE_TIMEOUT);

1 个答案:

答案 0 :(得分:0)

通常这是因为DFP广告管理系统已经设置了定位并选择了获胜者,并且在您的Prebid应用程序将出价传递给setTargeting时已为您的广告位展示了广告。您确定要在DFP / GAM中使用disableInitialLoad以及enableSingleRequest函数吗?在他们的Basic Example page上搜索它们,以了解他们如何加载DFP广告管理系统。如果您可以发送指向页面的链接,我们也可以从那里确切地告诉您问题所在。