.版本 2
.支持库 spec
.程序集 窗口程序集_启动窗口
.子程序 _按钮1_被单击
.局部变量 errorMsg, 文本型
调试输出 (login (“”, “”, “”, errorMsg), errorMsg)
.子程序 login, 逻辑型
.参数 username, 文本型
.参数 password, 文本型
.参数 agent, 文本型, 参考 可空
.参数 errorMsg, 文本型, 参考 可空
.局部变量 data, 文本型
.局部变量 cookies, 文本型
.局部变量 str, 文本型
.局部变量 json, 类_json
data = “username=” + username + “&pwdencrypt=” + getPwd (password) + “&oauth_token=” + getToken (cookies) + “&denyCallbackURL=&UIStyle=xelogin&appid=1&cssid=1&mxc=&vk=&isRemMe=0&mmc=&vv=&hiido=1”
str = 编码_URL解码 (到文本 (网页_访问 (“https://lgn.yy.com/lgn/oauth/x2/s/login_asyn.do”, 1, data, cookies, , , , , , agent)), 真)
' 调试输出 (str)
调试输出 (agent)
.如果 (str ≠ “”)
json.解析 (str)
.如果 (寻找文本 (str, #引号 + “code” + #引号 + “:” + #引号 + “0”, , 假) ≠ -1)
errorMsg = “登录成功”
返回 (真)
.否则
errorMsg = json.取通用属性 (“msg”)
.如果真 (errorMsg = “”)
errorMsg = str
.如果真结束
返回 (假)
.如果结束
.否则
errorMsg = “请求超时”
返回 (假)
.如果结束
.子程序 getToken, 文本型
.参数 cookies, 文本型, 参考 可空
.局部变量 str, 文本型
str = 到文本 (网页_访问 (“//channel.yy.com/auth/wakeUdbLogin.action?mt=%7B%22m%22%3A%22fb1d5%E2%80%A6161%22%2C%22v%22%3A%221.0.12%22%7D&protocol=http”, , , , cookies))
返回 (文本_取出中间文本 (str, “oauth_token=”, “&”))
.子程序 __启动窗口_创建完毕
.子程序 getPwd, 文本型
.参数 val, 文本型
.局部变量 js, 类_脚本组件
js.执行 (#js)
返回 (js.运行 (“xiaozhe”, val))