(&self, target_role: Option<Role>, pl: &S)
| 277 | } |
| 278 | |
| 279 | async fn response_request<S>(&self, target_role: Option<Role>, pl: &S) -> Result<()> |
| 280 | where |
| 281 | S: ?Sized + serde::ser::Serialize + BasePayloadResultProvider, |
| 282 | { |
| 283 | let server = if self.config.use_target_role_suffix { |
| 284 | match target_role { |
| 285 | Some(Role::FNS) => format!("{}/fns", self.config.server), |
| 286 | Some(Role::SNS) => format!("{}/sns", self.config.server), |
| 287 | Some(Role::HNS) => format!("{}/hns", self.config.server), |
| 288 | None => self.config.server.clone(), |
| 289 | } |
| 290 | } else { |
| 291 | self.config.server.clone() |
| 292 | }; |
| 293 | |
| 294 | let bp = pl.base_payload(); |
| 295 | let body = serde_json::to_string(&pl)?; |
| 296 | |
| 297 | info!(receiver_id = %hex::encode(&bp.base.receiver_id), transaction_id = bp.base.transaction_id, message_type = ?bp.base.message_type, server = %server, "Making request"); |
| 298 | debug!("JSON: {}", body); |
| 299 | |
| 300 | self.client |
| 301 | .post(&server) |
| 302 | .headers(self.headers.clone()) |
| 303 | .body(body) |
| 304 | .send() |
| 305 | .await? |
| 306 | .error_for_status()?; |
| 307 | Ok(()) |
| 308 | } |
| 309 | |
| 310 | async fn request<S, D>( |
| 311 | &self, |
no test coverage detected