Trait qiniu_http_client::Resolver
source · pub trait Resolver: DynClone + Debug + Sync + Send {
// Required method
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult;
// Provided method
fn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult> { ... }
}
Expand description
域名解析的接口
同时提供阻塞接口和异步接口,异步接口则需要启用 async
功能
Required Methods§
sourcefn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
解析域名
该方法的异步版本为 Self::async_resolve
。
Provided Methods§
sourcefn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult>
fn async_resolve<'a>( &'a self, domain: &'a str, opts: ResolveOptions<'a> ) -> BoxFuture<'a, ResolveResult>
Available on crate feature
async
only.异步解析域名
Implementations on Foreign Types§
source§impl<'b, T: 'b + Resolver + ?Sized> Resolver for &'b T
impl<'b, T: 'b + Resolver + ?Sized> Resolver for &'b T
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
source§fn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult>
fn async_resolve<'a>( &'a self, domain: &'a str, opts: ResolveOptions<'a> ) -> BoxFuture<'a, ResolveResult>
Available on crate feature
async
only.source§impl<'b, T: 'b + Resolver + ?Sized> Resolver for &'b mut T
impl<'b, T: 'b + Resolver + ?Sized> Resolver for &'b mut T
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
source§fn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult>
fn async_resolve<'a>( &'a self, domain: &'a str, opts: ResolveOptions<'a> ) -> BoxFuture<'a, ResolveResult>
Available on crate feature
async
only.source§impl<T: Resolver + ?Sized> Resolver for Box<T>
impl<T: Resolver + ?Sized> Resolver for Box<T>
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
source§fn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult>
fn async_resolve<'a>( &'a self, domain: &'a str, opts: ResolveOptions<'a> ) -> BoxFuture<'a, ResolveResult>
Available on crate feature
async
only.source§impl<T: Resolver + ?Sized> Resolver for Rc<T>
impl<T: Resolver + ?Sized> Resolver for Rc<T>
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
source§fn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult>
fn async_resolve<'a>( &'a self, domain: &'a str, opts: ResolveOptions<'a> ) -> BoxFuture<'a, ResolveResult>
Available on crate feature
async
only.source§impl<T: Resolver + ?Sized> Resolver for Arc<T>
impl<T: Resolver + ?Sized> Resolver for Arc<T>
fn resolve(&self, domain: &str, opts: ResolveOptions<'_>) -> ResolveResult
source§fn async_resolve<'a>(
&'a self,
domain: &'a str,
opts: ResolveOptions<'a>
) -> BoxFuture<'a, ResolveResult>
fn async_resolve<'a>( &'a self, domain: &'a str, opts: ResolveOptions<'a> ) -> BoxFuture<'a, ResolveResult>
Available on crate feature
async
only.