mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
add minimal implementation of FetchParams (#34833)
* add minimal implementation of fetchParams and fetch controller for cancellation support fix something removing fetch params from http network or cache fetch due to implementation difficult Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * run formatter Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * fix incorrect spec implementation and add comments with related step number and description Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * fix double borrow issue Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * remove unused code from FetchParams Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * add workaround for double mutable borrow error Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * remove unnecessary comments, move import and format Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * fix comments that state spec instructions Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * update comment Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * refactor tests Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> * refactor tests Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> --------- Signed-off-by: Lloyd Massiah <artmis9@protonmail.com> Co-authored-by: lazypassion <25536767+lazypassion@users.noreply.github.com>
This commit is contained in:
parent
0c0ffefb48
commit
90c5685d61
9 changed files with 234 additions and 154 deletions
|
@ -47,6 +47,7 @@ use crate::connector::{
|
|||
use crate::cookie::ServoCookie;
|
||||
use crate::cookie_storage::CookieStorage;
|
||||
use crate::fetch::cors_cache::CorsCache;
|
||||
use crate::fetch::fetch_params::FetchParams;
|
||||
use crate::fetch::methods::{fetch, CancellationListener, FetchContext};
|
||||
use crate::filemanager_thread::FileManager;
|
||||
use crate::hsts::HstsList;
|
||||
|
@ -751,7 +752,7 @@ impl CoreResourceManager {
|
|||
_ => ResourceTimingType::Resource,
|
||||
};
|
||||
|
||||
let mut request = request_builder.build();
|
||||
let request = request_builder.build();
|
||||
let url = request.current_url();
|
||||
|
||||
// In the case of a valid blob URL, acquiring a token granting access to a file,
|
||||
|
@ -794,8 +795,10 @@ impl CoreResourceManager {
|
|||
match res_init_ {
|
||||
Some(res_init) => {
|
||||
let response = Response::from_init(res_init, timing_type);
|
||||
|
||||
let mut fetch_params = FetchParams::new(request);
|
||||
http_redirect_fetch(
|
||||
&mut request,
|
||||
&mut fetch_params,
|
||||
&mut CorsCache::default(),
|
||||
response,
|
||||
true,
|
||||
|
@ -806,7 +809,7 @@ impl CoreResourceManager {
|
|||
.await;
|
||||
},
|
||||
None => {
|
||||
fetch(&mut request, &mut sender, &context).await;
|
||||
fetch(request, &mut sender, &context).await;
|
||||
},
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue