@@ -274,13 +274,16 @@ where
274
274
}
275
275
276
276
fn apply_request_parts_to_response < B > (
277
- headers : hyper :: header :: HeaderMap ,
277
+ parts : & http :: response :: Parts ,
278
278
response : & mut axum:: response:: Response < B > ,
279
279
) {
280
280
let mut_headers = response. headers_mut ( ) ;
281
- for ( key, value) in headers. iter ( ) {
281
+ for ( key, value) in parts . headers . iter ( ) {
282
282
mut_headers. insert ( key, value. clone ( ) ) ;
283
283
}
284
+ * response. status_mut ( ) = parts. status ;
285
+ * response. version_mut ( ) = parts. version ;
286
+ * response. extensions_mut ( ) = parts. extensions . clone ( ) ;
284
287
}
285
288
286
289
fn add_server_context ( server_context : & DioxusServerContext , context_providers : & ContextProviders ) {
@@ -410,8 +413,8 @@ pub async fn render_handler(
410
413
Ok ( ( freshness, rx) ) => {
411
414
let mut response = axum:: response:: Html :: from ( Body :: from_stream ( rx) ) . into_response ( ) ;
412
415
freshness. write ( response. headers_mut ( ) ) ;
413
- let headers = server_context. response_parts ( ) . headers . clone ( ) ;
414
- apply_request_parts_to_response ( headers , & mut response) ;
416
+ let parts = server_context. response_parts ( ) ;
417
+ apply_request_parts_to_response ( & parts , & mut response) ;
415
418
Result :: < http:: Response < axum:: body:: Body > , StatusCode > :: Ok ( response)
416
419
}
417
420
Err ( SSRError :: Incremental ( e) ) => {
0 commit comments