一、阿里雲一鍵登錄預登錄失敗
1、在進行阿里雲一鍵登錄前,用戶需要進行預登錄。用戶打開阿里雲登錄頁,輸入賬號和密碼,完成登錄,此時會生成一條阿里雲登錄的Cookies,即ALIYUN_ID_Token和ALIYUN_JWT_Token,這兩個Cookies是進行阿里雲一鍵登錄的必要參數。如果這兩個Cookies因為登錄session過期或其他原因失效了,那麼進行一鍵登錄的時候就會預登錄失敗。
2、解決預登錄失敗的問題需要重新登錄,生成新的Cookies,將其設置在本地,再進行阿里雲一鍵登錄即可。
下面給出代碼示例:
const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch({ headless: false, // 非無頭模式方便我們觀察執行效果 defaultViewport: { width: 1000, height: 800 } }); const page = await browser.newPage(); await page.goto('https://www.aliyun.com'); // 在此進行登錄 const cookies = await page.cookies(); const aliyunIdToken = cookies.filter(cookie => cookie.name === 'ALIYUN_ID_Token')[0]; const aliyunJwtToken = cookies.filter(cookie => cookie.name === 'ALIYUN_JWT_Token')[0]; // 將Cookies設置在本地 // ... await browser.close(); })();
二、阿里雲手機號一鍵登錄
1、阿里雲支持手機號一鍵登錄。用戶在登錄頁選擇手機號登錄,輸入手機號碼後進行下一步。此時會發送簡訊驗證碼到用戶手機,用戶輸入驗證碼即可完成登錄。
2、實現手機號一鍵登錄需要在阿里雲管理控制台進行相應的配置,具體可參考阿里雲官方文檔:
https://help.aliyun.com/document_detail/66099.html?spm=a2c4g.11186623.6.558.71d06a9ec32buR
三、阿里雲一鍵登陸協議點擊無響應
1、阿里雲一鍵登陸協議點擊無響應,可能是因為本身點擊邏輯有誤,也可能是因為協議對應的url地址失效。
2、解決此類問題需要在代碼中進行檢查。首先驗證頁面上協議鏈接地址是否正確,其次驗證協議對應的url地址是否可以正常訪問。
下面給出代碼示例:
const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch({ headless: false, // 非無頭模式方便我們觀察執行效果 defaultViewport: { width: 1000, height: 800 } }); const page = await browser.newPage(); await page.goto('https://www.aliyun.com'); // 檢查協議鏈接 const agreement = await page.$('#agreement'); const agreementHref = await agreement.$eval('a', link => link.getAttribute('href')); console.log(agreementHref); // 列印協議鏈接的地址 // 驗證協議鏈接的地址是否可以正常訪問 const response = await page.goto(agreementHref, { waitUntil: 'domcontentloaded' }); console.log(response.status()); // 列印請求返回的狀態碼 // 點擊同意協議 await page.click('#agreement'); // ... await browser.close(); })();
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/183649.html