Browse Source

chore(cloud): clarify access-token hint and document the MakerWorld cookie path for China-region accounts (#1396)

  Reporter wintsa123 (China-region user, bambulab.cn) couldn't log
  into Bambuddy. Looked like a code bug; turned out the code is fine
  and only the docs were wrong.

  What's already there (no change needed):

  - PR #1013 (April) added the China region selector to the
    token-login flow and routes validation to api.bambulab.cn instead
    of api.bambulab.com. The selector is in the form
    (frontend/src/pages/ProfilesPage.tsx:204-205) and the backend
    dispatch is in backend/app/services/bambu_cloud.py:15 +
    backend/app/api/routes/cloud.py:174.

  What was wrong:

  - The in-app `accessTokenHint` said "Paste your Bambu Lab access
    token (from Bambu Studio)" in all 8 locales. Bambu Studio never
    exposed the token in any UI, and the profile page on
    bambulab.com that used to show it has been removed. The hint was
    pointing users at sources that don't exist.
  - For China-region accounts the email / password flow is
    fundamentally unusable because those accounts are bound to phone
    numbers, not email — token login is the only working path. The
    hint didn't say so, so reporters kept trying email login first
    and getting confused.
  - The wiki's "Access Token Login" section in
    features/cloud-profiles.md only described the dead profile-page
    method and a Python-script alternative that only works against
    the global API. No mention of the China-region selector and no
    mention of the MakerWorld-cookie method that actually works
    today.

  What this change does:

  - Rewrites `accessTokenHint` in all 8 locales (en, de, fr, it, ja,
    pt-BR, zh-CN, zh-TW) to state that China-region accounts must
    use the token path and point at the wiki for the cookie
    retrieval procedure. zh-CN and zh-TW translations were written
    for the audience that actually needs this.
  - Rewrites the wiki's Access Token Login section: adds a
    "Region: China must use token login" callout, replaces the
    dead profile-page guidance with the MakerWorld cookie method
    (both makerworld.com and makerworld.com.cn, with the browser
    DevTools steps), keeps the Python-script alternative explicitly
    scoped to global-region accounts, and warns that the cookie
    value is sensitive and shouldn't be pasted into screenshots or
    threads.

  No backend changes. Once a user has the token + Region: China
  selected, the existing flow works.
maziggy 1 week ago
parent
commit
0ddf0925b7

File diff suppressed because it is too large
+ 3 - 0
CHANGELOG.md


+ 1 - 1
frontend/src/i18n/locales/de.ts

@@ -2860,7 +2860,7 @@ export default {
       checkEmail: 'Prüfen Sie Ihre E-Mail ({{email}}) für einen 6-stelligen Code',
       enterTotpHint: 'Geben Sie den 6-stelligen Code aus Ihrer Authenticator-App ein',
       accessToken: 'Zugriffstoken',
-      accessTokenHint: 'Fügen Sie Ihr Bambu Lab Zugriffstoken ein (aus Bambu Studio)',
+      accessTokenHint: 'Fügen Sie Ihr Bambu-Cloud-Zugriffstoken ein. Konten der Region China müssen diesen Weg nutzen (telefonnummerngebunden — kein E-Mail-Login). Im Wiki steht, wie Sie das Token aus den MakerWorld-Cookies auslesen.',
       back: 'Zurück',
       loginButton: 'Anmelden',
       verifyButton: 'Bestätigen',

+ 1 - 1
frontend/src/i18n/locales/en.ts

@@ -2863,7 +2863,7 @@ export default {
       checkEmail: 'Check your email ({{email}}) for a 6-digit code',
       enterTotpHint: 'Enter the 6-digit code from your authenticator app',
       accessToken: 'Access Token',
-      accessTokenHint: 'Paste your Bambu Lab access token (from Bambu Studio)',
+      accessTokenHint: 'Paste your Bambu Cloud access token. China-region accounts must use this path (phone-bound — email login unavailable). See the wiki for how to retrieve the token from MakerWorld cookies.',
       back: 'Back',
       loginButton: 'Login',
       verifyButton: 'Verify',

+ 1 - 1
frontend/src/i18n/locales/fr.ts

@@ -2849,7 +2849,7 @@ export default {
       checkEmail: 'Code envoyé à {{email}}',
       enterTotpHint: 'Entrez le code 2FA',
       accessToken: 'Jeton d\'accès (Access Token)',
-      accessTokenHint: 'Collez le jeton (depuis Bambu Studio)',
+      accessTokenHint: 'Collez votre jeton Bambu Cloud. Les comptes de la région Chine doivent passer par ici (liés à un numéro de téléphone — pas de connexion par e-mail). Le wiki explique comment récupérer le jeton depuis les cookies MakerWorld.',
       back: 'Retour',
       loginButton: 'Connexion',
       verifyButton: 'Vérifier',

+ 1 - 1
frontend/src/i18n/locales/it.ts

@@ -2848,7 +2848,7 @@ export default {
       checkEmail: 'Controlla la tua email ({{email}}) per un codice a 6 cifre',
       enterTotpHint: 'Inserisci il codice a 6 cifre dalla tua app autenticatore',
       accessToken: 'Token di accesso',
-      accessTokenHint: 'Incolla il tuo access token Bambu Lab (da Bambu Studio)',
+      accessTokenHint: 'Incolla il tuo access token Bambu Cloud. Gli account della regione Cina devono usare questa via (vincolati al numero di telefono — login via e-mail non disponibile). Il wiki spiega come recuperare il token dai cookie di MakerWorld.',
       back: 'Indietro',
       loginButton: 'Accedi',
       verifyButton: 'Verifica',

+ 1 - 1
frontend/src/i18n/locales/ja.ts

@@ -2860,7 +2860,7 @@ export default {
       checkEmail: 'メール ({{email}}) に届いた6桁のコードを入力してください',
       enterTotpHint: '認証アプリの6桁のコードを入力してください',
       accessToken: 'アクセストークン',
-      accessTokenHint: 'Bambu Labのアクセストークンを貼り付け(Bambu Studioから取得)',
+      accessTokenHint: 'Bambu Cloud のアクセストークンを貼り付けてください。中国リージョンのアカウントはこの方法のみ利用可能です(電話番号認証のためメールログイン不可)。トークンの取得方法は MakerWorld の Cookie から(Wiki を参照)。',
       back: '戻る',
       loginButton: 'ログイン',
       verifyButton: '認証',

+ 1 - 1
frontend/src/i18n/locales/pt-BR.ts

@@ -2848,7 +2848,7 @@ export default {
       checkEmail: 'Verifique seu email ({{email}}) para um código de 6 dígitos',
       enterTotpHint: 'Digite o código de 6 dígitos do seu aplicativo autenticador',
       accessToken: 'Token de Acesso',
-      accessTokenHint: 'Cole seu token de acesso Bambu Lab (do Bambu Studio)',
+      accessTokenHint: 'Cole seu token de acesso da Bambu Cloud. Contas da região China precisam usar este caminho (vinculadas ao celular — login por e-mail indisponível). Veja no wiki como obter o token dos cookies do MakerWorld.',
       back: 'Voltar',
       loginButton: 'Entrar',
       verifyButton: 'Verificar',

+ 1 - 1
frontend/src/i18n/locales/zh-CN.ts

@@ -2848,7 +2848,7 @@ export default {
       checkEmail: '检查您的邮箱 ({{email}}) 获取 6 位验证码',
       enterTotpHint: '输入验证器应用中的 6 位代码',
       accessToken: '访问令牌',
-      accessTokenHint: '粘贴您的拓竹访问令牌(来自 Bambu Studio)',
+      accessTokenHint: '粘贴您的拓竹云访问令牌。中国大陆账号(绑定手机号、无邮箱登录)只能使用此方式登录。可从 MakerWorld 浏览器 Cookie 中获取令牌,详见 Wiki。',
       back: '返回',
       loginButton: '登录',
       verifyButton: '验证',

+ 1 - 1
frontend/src/i18n/locales/zh-TW.ts

@@ -2848,7 +2848,7 @@ export default {
       checkEmail: '檢查您的信箱 ({{email}}) 獲取 6 位驗證碼',
       enterTotpHint: '輸入驗證器 App 中的 6 位驗證碼',
       accessToken: '存取權杖',
-      accessTokenHint: '貼上您的拓竹存取權杖(來自 Bambu Studio)',
+      accessTokenHint: '貼上您的拓竹雲端存取權杖。中國大陸帳號(綁定手機號碼、無 Email 登入)僅能使用此方式登入。可從 MakerWorld 瀏覽器 Cookie 取得權杖,詳見 Wiki。',
       back: '返回',
       loginButton: '登入',
       verifyButton: '驗證',

Some files were not shown because too many files changed in this diff