1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-22 15:24:46 -05:00
denoland-deno/runtime/ops/fetch.rs

41 lines
1 KiB
Rust
Raw Normal View History

2021-01-10 21:59:07 -05:00
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
use crate::permissions::Permissions;
use deno_fetch::reqwest;
use deno_fetch::HttpClientDefaults;
2019-08-26 08:50:21 -04:00
pub fn init(
rt: &mut deno_core::JsRuntime,
user_agent: String,
ca_data: Option<Vec<u8>>,
) {
{
let op_state = rt.op_state();
let mut state = op_state.borrow_mut();
state.put::<reqwest::Client>({
deno_fetch::create_http_client(user_agent.clone(), ca_data.clone())
.unwrap()
});
state.put::<HttpClientDefaults>(HttpClientDefaults {
user_agent,
2021-03-25 14:17:37 -04:00
ca_data,
});
}
super::reg_sync(rt, "op_fetch", deno_fetch::op_fetch::<Permissions>);
super::reg_async(rt, "op_fetch_send", deno_fetch::op_fetch_send);
super::reg_async(
rt,
"op_fetch_request_write",
deno_fetch::op_fetch_request_write,
);
super::reg_async(
rt,
"op_fetch_response_read",
deno_fetch::op_fetch_response_read,
);
super::reg_sync(
2020-09-18 09:20:55 -04:00
rt,
"op_create_http_client",
deno_fetch::op_create_http_client::<Permissions>,
2020-09-18 09:20:55 -04:00
);
}