一、阿里雲一鍵登錄預登錄失敗
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-hk/n/183649.html
微信掃一掃
支付寶掃一掃