3 changed files with 156 additions and 8 deletions
@ -0,0 +1,98 @@ |
|||
// 测试脚本:验证登录时用户类型是否被覆盖
|
|||
// 运行方法:在微信开发者工具的控制台中执行
|
|||
|
|||
// 模拟删除缓存
|
|||
function clearCache() { |
|||
console.log('=== 开始模拟删除缓存 ==='); |
|||
try { |
|||
wx.removeStorageSync('userInfo'); |
|||
wx.removeStorageSync('users'); |
|||
wx.removeStorageSync('userId'); |
|||
wx.removeStorageSync('openid'); |
|||
wx.removeStorageSync('sessionKey'); |
|||
wx.removeStorageSync('phoneNumber'); |
|||
wx.removeStorageSync('userType'); |
|||
console.log('✅ 缓存删除成功'); |
|||
} catch (e) { |
|||
console.error('❌ 缓存删除失败:', e); |
|||
} |
|||
console.log('=== 缓存删除完成 ==='); |
|||
} |
|||
|
|||
// 模拟登录流程
|
|||
async function simulateLogin() { |
|||
console.log('=== 开始模拟登录流程 ==='); |
|||
|
|||
// 模拟获取登录code
|
|||
const loginRes = await new Promise((resolve) => { |
|||
wx.login({ |
|||
success: resolve |
|||
}); |
|||
}); |
|||
|
|||
console.log('✅ 获取登录code成功:', loginRes.code); |
|||
|
|||
// 模拟获取openid
|
|||
const API = require('./utils/api.js'); |
|||
const openidRes = await API.getOpenid(loginRes.code); |
|||
console.log('✅ 获取openid成功:', openidRes); |
|||
|
|||
const openid = openidRes.data?.openid || openidRes.openid; |
|||
const userId = openidRes.data?.userId || openidRes.userId; |
|||
|
|||
console.log('提取到的openid:', openid); |
|||
console.log('提取到的userId:', userId); |
|||
|
|||
// 存储openid和userId
|
|||
wx.setStorageSync('openid', openid); |
|||
if (userId) { |
|||
wx.setStorageSync('userId', userId); |
|||
} |
|||
|
|||
console.log('=== 登录流程模拟完成 ==='); |
|||
return { openid, userId }; |
|||
} |
|||
|
|||
// 测试用户类型是否被覆盖
|
|||
async function testUserType() { |
|||
console.log('=== 开始测试用户类型是否被覆盖 ==='); |
|||
|
|||
// 1. 清除缓存
|
|||
clearCache(); |
|||
|
|||
// 2. 模拟登录
|
|||
const { openid, userId } = await simulateLogin(); |
|||
|
|||
// 3. 模拟获取手机号(实际登录时会有授权流程)
|
|||
const phoneNumber = '13800138000'; // 模拟手机号
|
|||
wx.setStorageSync('phoneNumber', phoneNumber); |
|||
|
|||
// 4. 模拟用户信息
|
|||
const userInfo = { |
|||
name: '测试用户', |
|||
avatarUrl: 'https://example.com/avatar.jpg', |
|||
phoneNumber: phoneNumber |
|||
}; |
|||
|
|||
// 5. 模拟用户类型(空值,模拟删除缓存后的情况)
|
|||
const currentUserType = ''; |
|||
|
|||
// 6. 调用uploadUserInfoToServer
|
|||
const page = getCurrentPages()[0]; |
|||
if (page && page.uploadUserInfoToServer) { |
|||
console.log('=== 调用uploadUserInfoToServer ==='); |
|||
console.log('传入的用户类型:', currentUserType); |
|||
|
|||
const result = await page.uploadUserInfoToServer(userInfo, userId || 'test_user_id', currentUserType); |
|||
console.log('上传结果:', result); |
|||
} else { |
|||
console.error('❌ 无法找到uploadUserInfoToServer方法'); |
|||
} |
|||
|
|||
console.log('=== 测试完成 ==='); |
|||
} |
|||
|
|||
// 运行测试
|
|||
testUserType().catch(err => { |
|||
console.error('测试失败:', err); |
|||
}); |
|||
Loading…
Reference in new issue