Skip to content

Commit 9d57da8

Browse files
authored
Added a list of Prebid Server adapters (prebid#817)
* Added an autogenerated list of Prebid Server adapters. * Clarified what is in this bidder list. * More elegant javascript. * Added some more error handling, in case the server responded badly.
1 parent ac66671 commit 9d57da8

File tree

2 files changed

+51
-5
lines changed

2 files changed

+51
-5
lines changed

assets/js/prebid-server-api.js

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
var pbs = function() {
2+
function getJSON(url, onSuccess, onFailure) {
3+
req = new XMLHttpRequest();
4+
req.onreadystatechange = function() {
5+
if (req.readyState === 4) {
6+
if (req.status === 200) {
7+
try {
8+
onSuccess(JSON.parse(req.responseText));
9+
} catch (e) {
10+
onFailure(req.status, e.message)
11+
}
12+
} else {
13+
onFailure(req.status, req.responseText);
14+
}
15+
}
16+
}
17+
req.open("GET", url);
18+
req.send();
19+
}
20+
21+
return {
22+
// Calls onSuccess() with a list of Prebid Server bidders, like ["appnexus", "adform", "adtelligent", ...],
23+
// or onFailure with the HTTP status & response text if the call failed.
24+
fetchBidders: getJSON.bind(null, "https://prebid.adnxs.com/pbs/v1/info/bidders")
25+
}
26+
}()

dev-docs/get-started-with-prebid-server.md

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,18 @@ top_nav_section: dev_docs
77
nav_section: prebid-server
88
---
99

10+
<script type="text/javascript" src="{{site.baseurl}}/assets/js/prebid-server-api.js"></script>
1011
<div class="bs-docs-section" markdown="1">
1112

1213
# Get Started with Prebid Server
1314
{:.no_toc}
1415

15-
This page has instructions for adding Prebid Server to Prebid.js.
16+
Prebid Server improves your page's performance by running the header bidding auction on a server.
17+
This will improve your page's load time, which should improve your users' experience.
1618

17-
For many publishers, client-side header bidding is a balancing act between the inclusion of demand partners and impact to the page.
19+
The following adapters are supported by the latest tagged version of Prebid Server:
1820

19-
Using Prebid Server, you can move demand partners server-side, eliminating most of the latency impact that comes with adding more partners.
20-
21-
This should help you make more money without sacrificing user experience.
21+
<ul id="prebid-server-bidder-list"></ul>
2222

2323
{: .alert.alert-success :}
2424
**Prebid Server is open source!**
@@ -170,3 +170,23 @@ var adUnit1 = {
170170
+ [Add a Bidder Adapter to Prebid Server]({{site.baseurl}}/dev-docs/add-a-prebid-server-adapter.html)
171171

172172
</div>
173+
<script type="text/javascript" async>
174+
(function() {
175+
function onSuccess(bidders) {
176+
bidders.sort();
177+
var list = document.getElementById("prebid-server-bidder-list");
178+
for (var i = 0; i < bidders.length; i++) {
179+
var thisElement = document.createElement("li")
180+
thisElement.innerHTML = bidders[i]
181+
list.appendChild(thisElement)
182+
}
183+
}
184+
function onError(status, err) {
185+
var list = document.getElementById("prebid-server-bidder-list");
186+
var err = document.createElement("span")
187+
err.innerHTML = "Failed to fetch Prebid Server adapters. HTTP status: " + status + ". error: " + err;
188+
list.parentNode.replaceChild(list, err)
189+
}
190+
pbs.fetchBidders(onSuccess, onError);
191+
})()
192+
</script>

0 commit comments

Comments
 (0)