#open-rtb #native #ads #dynamic #deserialize #serialization

vizio-openrtb

针对Vizio定制的Rust语言OpenRTB v2.5和OpenRTB动态原生广告v1.2类型

3个版本

使用旧Rust 2015

0.2.3 2023年3月21日
0.2.2 2023年3月2日
0.2.1 2023年3月2日

编码类别中排名第1240

Download history 31/week @ 2024-04-03 141/week @ 2024-04-17

每月下载量113

MIT/Apache

97KB
2K SLoC

Travis Build Status AppVeyor Build status crates.io docs.rs

openrtb

Rust语言的OpenRTB v2.5和OpenRTB动态原生广告v1.2类型。处理JSON的序列化和反序列化。

示例

extern crate openrtb;
extern crate reqwest;

use std::error::Error;

use openrtb::current::{BidRequest, BidResponse};
use reqwest::StatusCode;

fn main() -> Result<(), Box<Error>> {
    let id = "f9b54eb8-6f3b-11e8-adc0-fa7ae01bbebc".to_string();
    let req = BidRequest::new(id);

    let client = reqwest::Client::new();
    let mut res = client
        .post("https://prebid.adnxs.com/pbs/v1/openrtb2/auction")
        .json(&req)
        .send()?;

    match res.status() {
        StatusCode::OK => {
            let res: BidResponse = res.json()?;
            println!("Received bids for req {}.", res.id);
        }
        StatusCode::NO_CONTENT => {
            println!("No bids.");
        }
        _ => {
            println!("Error: {:?}", res);
        }
    }

    Ok(())
}

依赖项

~2–3MB
~58K SLoC