pub struct ReqwestResponseEvent { /* private fields */ }Expand description
the resulting data from a finished request is found here
Implementations§
Source§impl ReqwestResponseEvent
impl ReqwestResponseEvent
Sourcepub fn as_str(&self) -> Result<&str>
pub fn as_str(&self) -> Result<&str>
try to get the body of the response as_str
Examples found in repository?
examples/post.rs (line 27)
15fn send_requests(mut client: BevyReqwest) {
16 let url = "https://jsonplaceholder.typicode.com/posts";
17 let body = Post {
18 title: "hello".into(),
19 body: "world".into(),
20 user_id: 1,
21 };
22 let req = client.post(url).json(&body).build().unwrap();
23 client
24 .send(req)
25 .on_response(|req: On<ReqwestResponseEvent>| {
26 let req = req.event();
27 let res = req.as_str();
28 bevy::log::info!("return data: {res:?}");
29 });
30}More examples
examples/minimal.rs (line 28)
13fn send_requests(mut client: BevyReqwest) {
14 let url = "https://bored-api.appbrewery.com/random";
15
16 // use regular reqwest http calls, then poll them to completion.
17 let reqwest_request = client.get(url).build().unwrap();
18
19 client
20 // Sends the created http request
21 .send(reqwest_request)
22 // The response from the http request can be reached using an observersystem,
23 // where the only requirement is that the first parameter in the system is the specific Trigger type
24 // the rest is the same as a regular system
25 .on_response(
26 |trigger: On<ReqwestResponseEvent>, mut history: ResMut<History>| {
27 let response = trigger.event();
28 let data = response.as_str();
29 let status = response.status();
30 // let headers = req.response_headers();
31 bevy::log::info!("code: {status}, data: {data:?}");
32 if let Ok(data) = data {
33 history.responses.push(format!("OK: {data}"));
34 }
35 },
36 )
37 // In case of request error, it can be reached using an observersystem as well
38 .on_error(
39 |trigger: On<ReqwestErrorEvent>, mut history: ResMut<History>| {
40 let e = &trigger.event().entity;
41 bevy::log::info!("error: {e:?}");
42 history.responses.push(format!("ERROR: {e:?}"));
43 },
44 );
45}Sourcepub fn as_string(&self) -> Result<String>
pub fn as_string(&self) -> Result<String>
try to get the body of the response as an owned string
Sourcepub fn deserialize_json<'de, T: Deserialize<'de>>(&'de self) -> Result<T>
pub fn deserialize_json<'de, T: Deserialize<'de>>(&'de self) -> Result<T>
try to deserialize the body of the response using json
Sourcepub fn status(&self) -> StatusCode
pub fn status(&self) -> StatusCode
Get the StatusCode of this Response.
Examples found in repository?
examples/minimal.rs (line 29)
13fn send_requests(mut client: BevyReqwest) {
14 let url = "https://bored-api.appbrewery.com/random";
15
16 // use regular reqwest http calls, then poll them to completion.
17 let reqwest_request = client.get(url).build().unwrap();
18
19 client
20 // Sends the created http request
21 .send(reqwest_request)
22 // The response from the http request can be reached using an observersystem,
23 // where the only requirement is that the first parameter in the system is the specific Trigger type
24 // the rest is the same as a regular system
25 .on_response(
26 |trigger: On<ReqwestResponseEvent>, mut history: ResMut<History>| {
27 let response = trigger.event();
28 let data = response.as_str();
29 let status = response.status();
30 // let headers = req.response_headers();
31 bevy::log::info!("code: {status}, data: {data:?}");
32 if let Ok(data) = data {
33 history.responses.push(format!("OK: {data}"));
34 }
35 },
36 )
37 // In case of request error, it can be reached using an observersystem as well
38 .on_error(
39 |trigger: On<ReqwestErrorEvent>, mut history: ResMut<History>| {
40 let e = &trigger.event().entity;
41 bevy::log::info!("error: {e:?}");
42 history.responses.push(format!("ERROR: {e:?}"));
43 },
44 );
45}Sourcepub fn response_headers(&self) -> &HeaderMap
pub fn response_headers(&self) -> &HeaderMap
Get the Headers of this Response.
Trait Implementations§
Source§impl Clone for ReqwestResponseEvent
impl Clone for ReqwestResponseEvent
Source§fn clone(&self) -> ReqwestResponseEvent
fn clone(&self) -> ReqwestResponseEvent
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ReqwestResponseEvent
impl Debug for ReqwestResponseEvent
Source§impl EntityEvent for ReqwestResponseEvent
impl EntityEvent for ReqwestResponseEvent
Source§fn event_target(&self) -> Entity
fn event_target(&self) -> Entity
The
Entity “target” of this EntityEvent. When triggered, this will run observers that watch for this specific entity.Source§fn event_target_mut(&mut self) -> &mut Entity
fn event_target_mut(&mut self) -> &mut Entity
Returns a mutable reference to the
Entity “target” of this EntityEvent. When triggered, this will run observers that watch for this specific entity. Read moreAuto Trait Implementations§
impl !Freeze for ReqwestResponseEvent
impl RefUnwindSafe for ReqwestResponseEvent
impl Send for ReqwestResponseEvent
impl Sync for ReqwestResponseEvent
impl Unpin for ReqwestResponseEvent
impl UnwindSafe for ReqwestResponseEvent
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> TypeData for T
impl<T> TypeData for T
Source§fn clone_type_data(&self) -> Box<dyn TypeData>
fn clone_type_data(&self) -> Box<dyn TypeData>
Creates a type-erased clone of this value.