Squarespace Help Center: Fix constant redirecting / reloading / refreshing

Stop the page from constantly redirecting / reloading / refreshing

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

作者
adgitate
今日安裝
0
安裝總數
6
評價
0 0 0
版本
2024-01-18a
建立日期
2024-01-18
更新日期
2024-01-18
尺寸
1.1 KB
授權條款
未知
腳本執行於

Explanation:
Enhanced Tracking Protection in a Firefox Private Window (or Never Save History) blocks the loading of "https://squarespace.zendesk.com/auth/v2/host/without_iframe.js" (from https://support.squarespace.com/hc/en-us/signin) which is important for getting the cookies of an already logged in user. Since they are not set but javascript knows that they should be, it repeatedly attempts to get them.

Details:
When the appropriate cookies aren't submitted in a request for a help article, the HTML response includes:

<script type="text/javascript">
    HelpCenter.user = {"identifier":"...","email":null,

instead of

<script type="text/javascript">
    HelpCenter.user = {"identifier":"...","email":"[email protected]",

Then in one of the theme.zdassets.com js files (relevant lines extracted): (variable i comes from https://login.squarespace.com/api/1/login/auth-status)

if (u = window.HelpCenter.user).email !== i.email
    t.next = 16;
case 16:
    (s = xe.a.getSignInHref()) ? window.location.href = s

So as a workaround (to avoid changing my browser settings) I get it to take a different path so that I can initiate the request for cookies myself:

    if (r = window.ZD_SSO_SETTINGS.internal, !at.a.isSsoEnabled()) {
        t.next = 25;