mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Change RequestInit origin type to ImmutableOrigin
This commit is contained in:
parent
104e0b4730
commit
6032940fb8
32 changed files with 173 additions and 529 deletions
|
@ -160,6 +160,7 @@ impl DedicatedWorkerGlobalScope {
|
|||
let serialized_worker_url = worker_url.to_string();
|
||||
let name = format!("WebWorker for {}", serialized_worker_url);
|
||||
let top_level_browsing_context_id = TopLevelBrowsingContextId::installed();
|
||||
let origin = GlobalScope::current().expect("No current global object").origin().immutable().clone();
|
||||
|
||||
thread::Builder::new().name(name).spawn(move || {
|
||||
thread_state::initialize(thread_state::SCRIPT | thread_state::IN_WORKER);
|
||||
|
@ -179,10 +180,10 @@ impl DedicatedWorkerGlobalScope {
|
|||
destination: Destination::Worker,
|
||||
credentials_mode: CredentialsMode::Include,
|
||||
use_url_credentials: true,
|
||||
origin: worker_url,
|
||||
pipeline_id: pipeline_id,
|
||||
referrer_url: referrer_url,
|
||||
referrer_policy: referrer_policy,
|
||||
origin,
|
||||
.. RequestInit::default()
|
||||
};
|
||||
|
||||
|
|
|
@ -387,7 +387,7 @@ impl EventSource {
|
|||
// TODO: Step 9 set request's client settings
|
||||
let mut request = RequestInit {
|
||||
url: url_record,
|
||||
origin: global.get_url(),
|
||||
origin: global.origin().immutable().clone(),
|
||||
pipeline_id: Some(global.pipeline_id()),
|
||||
// https://html.spec.whatwg.org/multipage/#create-a-potential-cors-request
|
||||
use_url_credentials: true,
|
||||
|
|
|
@ -259,7 +259,7 @@ impl HTMLImageElement {
|
|||
|
||||
let request = RequestInit {
|
||||
url: img_url.clone(),
|
||||
origin: document.url().clone(),
|
||||
origin: document.origin().immutable().clone(),
|
||||
type_: RequestType::Image,
|
||||
pipeline_id: Some(document.global().pipeline_id()),
|
||||
.. RequestInit::default()
|
||||
|
|
|
@ -550,7 +550,7 @@ impl HTMLMediaElement {
|
|||
destination: Destination::Media,
|
||||
credentials_mode: CredentialsMode::Include,
|
||||
use_url_credentials: true,
|
||||
origin: document.url(),
|
||||
origin: document.origin().immutable().clone(),
|
||||
pipeline_id: Some(self.global().pipeline_id()),
|
||||
referrer_url: Some(document.url()),
|
||||
referrer_policy: document.get_referrer_policy(),
|
||||
|
|
|
@ -253,7 +253,7 @@ fn fetch_a_classic_script(script: &HTMLScriptElement,
|
|||
Some(CorsSettings::Anonymous) => CredentialsMode::CredentialsSameOrigin,
|
||||
_ => CredentialsMode::Include,
|
||||
},
|
||||
origin: doc.url(),
|
||||
origin: doc.origin().immutable().clone(),
|
||||
pipeline_id: Some(script.global().pipeline_id()),
|
||||
referrer_url: Some(doc.url()),
|
||||
referrer_policy: doc.get_referrer_policy(),
|
||||
|
|
|
@ -151,6 +151,7 @@ impl ServiceWorkerGlobalScope {
|
|||
.. } = scope_things;
|
||||
|
||||
let serialized_worker_url = script_url.to_string();
|
||||
let origin = GlobalScope::current().expect("No current global object").origin().immutable().clone();
|
||||
thread::Builder::new().name(format!("ServiceWorker for {}", serialized_worker_url)).spawn(move || {
|
||||
thread_state::initialize(SCRIPT | IN_WORKER);
|
||||
let roots = RootCollection::new();
|
||||
|
@ -164,10 +165,10 @@ impl ServiceWorkerGlobalScope {
|
|||
destination: Destination::ServiceWorker,
|
||||
credentials_mode: CredentialsMode::Include,
|
||||
use_url_credentials: true,
|
||||
origin: script_url,
|
||||
pipeline_id: pipeline_id,
|
||||
referrer_url: referrer_url,
|
||||
referrer_policy: referrer_policy,
|
||||
origin,
|
||||
.. RequestInit::default()
|
||||
};
|
||||
|
||||
|
|
|
@ -211,7 +211,7 @@ impl WorkerGlobalScopeMethods for WorkerGlobalScope {
|
|||
destination: Destination::Script,
|
||||
credentials_mode: CredentialsMode::Include,
|
||||
use_url_credentials: true,
|
||||
origin: self.worker_url.clone(),
|
||||
origin: global_scope.origin().immutable().clone(),
|
||||
pipeline_id: Some(self.upcast::<GlobalScope>().pipeline_id()),
|
||||
referrer_url: None,
|
||||
referrer_policy: None,
|
||||
|
|
|
@ -588,17 +588,14 @@ impl WorkletThread {
|
|||
// TODO: Fetch a module graph, not just a single script.
|
||||
// TODO: Fetch the script asynchronously?
|
||||
// TODO: Caching.
|
||||
// TODO: Avoid re-parsing the origin as a URL.
|
||||
let resource_fetcher = self.global_init.resource_threads.sender();
|
||||
let origin_url = ServoUrl::parse(&*origin.unicode_serialization())
|
||||
.unwrap_or_else(|_| ServoUrl::parse("about:blank").unwrap());
|
||||
let request = RequestInit {
|
||||
url: script_url,
|
||||
type_: RequestType::Script,
|
||||
destination: Destination::Script,
|
||||
mode: RequestMode::CorsMode,
|
||||
origin: origin_url,
|
||||
credentials_mode: credentials.into(),
|
||||
origin,
|
||||
.. RequestInit::default()
|
||||
};
|
||||
let script = load_whole_resource(request, &resource_fetcher).ok()
|
||||
|
|
|
@ -594,7 +594,7 @@ impl XMLHttpRequestMethods for XMLHttpRequest {
|
|||
use_cors_preflight: has_handlers,
|
||||
credentials_mode: credentials_mode,
|
||||
use_url_credentials: use_url_credentials,
|
||||
origin: self.global().get_url(),
|
||||
origin: self.global().origin().immutable().clone(),
|
||||
referrer_url: self.referrer_url.clone(),
|
||||
referrer_policy: self.referrer_policy.clone(),
|
||||
pipeline_id: Some(self.global().pipeline_id()),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue