Loading mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java +18 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,11 @@ public class WebRequest extends WebMessage { */ public final @Nullable String referrer; /** * The value of the origin of this request. */ public final @Nullable String origin; @Retention(RetentionPolicy.SOURCE) @IntDef({CACHE_MODE_DEFAULT, CACHE_MODE_NO_STORE, CACHE_MODE_RELOAD, CACHE_MODE_NO_CACHE, Loading Loading @@ -112,6 +117,7 @@ public class WebRequest extends WebMessage { method = builder.mMethod; cacheMode = builder.mCacheMode; referrer = builder.mReferrer; origin = builder.mOrigin; if (builder.mBody != null) { body = builder.mBody.asReadOnlyBuffer(); Loading @@ -128,6 +134,7 @@ public class WebRequest extends WebMessage { /* package */ String mMethod = "GET"; /* package */ int mCacheMode = CACHE_MODE_DEFAULT; /* package */ String mReferrer; /* package */ String mOrigin; /** * Construct a Builder instance with the specified URI. Loading Loading @@ -226,6 +233,17 @@ public class WebRequest extends WebMessage { return this; } /** * Set the origin URI. * * @param origin A URI String * @return This Builder instance. */ public @NonNull Builder origin(final @Nullable String origin) { mOrigin = origin; return this; } /** * @return A {@link WebRequest} constructed with the values from this Builder instance. */ Loading widget/android/WebExecutorSupport.cpp +10 −0 Original line number Diff line number Diff line Loading @@ -393,6 +393,16 @@ nsresult WebExecutorSupport::CreateStreamLoader( MOZ_ASSERT(cookieJarSettings); nsCOMPtr<nsILoadInfo> loadInfo = channel->LoadInfo(); RefPtr<nsIURI> originUri; const auto origin = req->Origin(); if (origin) { rv = NS_NewURI(getter_AddRefs(originUri), origin->ToString()); NS_ENSURE_SUCCESS(rv, NS_ERROR_MALFORMED_URI); OriginAttributes attrs = loadInfo->GetOriginAttributes(); attrs.SetFirstPartyDomain(true, originUri); loadInfo->SetOriginAttributes(attrs); } loadInfo->SetCookieJarSettings(cookieJarSettings); // setup http/https specific things Loading Loading
mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java +18 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,11 @@ public class WebRequest extends WebMessage { */ public final @Nullable String referrer; /** * The value of the origin of this request. */ public final @Nullable String origin; @Retention(RetentionPolicy.SOURCE) @IntDef({CACHE_MODE_DEFAULT, CACHE_MODE_NO_STORE, CACHE_MODE_RELOAD, CACHE_MODE_NO_CACHE, Loading Loading @@ -112,6 +117,7 @@ public class WebRequest extends WebMessage { method = builder.mMethod; cacheMode = builder.mCacheMode; referrer = builder.mReferrer; origin = builder.mOrigin; if (builder.mBody != null) { body = builder.mBody.asReadOnlyBuffer(); Loading @@ -128,6 +134,7 @@ public class WebRequest extends WebMessage { /* package */ String mMethod = "GET"; /* package */ int mCacheMode = CACHE_MODE_DEFAULT; /* package */ String mReferrer; /* package */ String mOrigin; /** * Construct a Builder instance with the specified URI. Loading Loading @@ -226,6 +233,17 @@ public class WebRequest extends WebMessage { return this; } /** * Set the origin URI. * * @param origin A URI String * @return This Builder instance. */ public @NonNull Builder origin(final @Nullable String origin) { mOrigin = origin; return this; } /** * @return A {@link WebRequest} constructed with the values from this Builder instance. */ Loading
widget/android/WebExecutorSupport.cpp +10 −0 Original line number Diff line number Diff line Loading @@ -393,6 +393,16 @@ nsresult WebExecutorSupport::CreateStreamLoader( MOZ_ASSERT(cookieJarSettings); nsCOMPtr<nsILoadInfo> loadInfo = channel->LoadInfo(); RefPtr<nsIURI> originUri; const auto origin = req->Origin(); if (origin) { rv = NS_NewURI(getter_AddRefs(originUri), origin->ToString()); NS_ENSURE_SUCCESS(rv, NS_ERROR_MALFORMED_URI); OriginAttributes attrs = loadInfo->GetOriginAttributes(); attrs.SetFirstPartyDomain(true, originUri); loadInfo->SetOriginAttributes(attrs); } loadInfo->SetCookieJarSettings(cookieJarSettings); // setup http/https specific things Loading