Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
.Veneno.
wechaty
提交
f708ea8e
W
wechaty
项目概览
.Veneno.
/
wechaty
与 Fork 源项目一致
Fork自
wechaty / wechaty
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
W
wechaty
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f708ea8e
编写于
10月 23, 2017
作者:
Huan (李卓桓)
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
code clean
上级
f5a64ab6
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
13 addition
and
27 deletion
+13
-27
src/puppet-web/bridge.ts
src/puppet-web/bridge.ts
+2
-9
src/puppet-web/puppet-web.ts
src/puppet-web/puppet-web.ts
+7
-14
src/wechaty.ts
src/wechaty.ts
+4
-4
未找到文件。
src/puppet-web/bridge.ts
浏览文件 @
f708ea8e
...
...
@@ -114,10 +114,6 @@ export class Bridge extends EventEmitter {
await
page
.
goto
(
url
)
// Does this related to(?) the CI Error: exception: Navigation Timeout Exceeded: 30000ms exceeded
log
.
verbose
(
'
PuppetWebBridge
'
,
'
initPage() after page.goto(url)
'
)
// , {
// waitUntil: 'load', // https://github.com/GoogleChrome/puppeteer/issues/805
// })
if
(
cookieList
&&
cookieList
.
length
)
{
await
page
.
setCookie
(...
cookieList
)
log
.
silly
(
'
PuppetWebBridge
'
,
'
initPage() page.setCookie() %s cookies set back
'
,
cookieList
.
length
)
...
...
@@ -213,7 +209,6 @@ export class Bridge extends EventEmitter {
public
async
quit
():
Promise
<
void
>
{
log
.
verbose
(
'
PuppetWebBridge
'
,
'
quit()
'
)
this
.
removeAllListeners
()
try
{
await
this
.
page
.
close
()
log
.
silly
(
'
PuppetWebBridge
'
,
'
quit() page.close()-ed
'
)
...
...
@@ -221,10 +216,8 @@ export class Bridge extends EventEmitter {
log
.
silly
(
'
PuppetWebBridge
'
,
'
quit() browser.close()-ed
'
)
}
catch
(
e
)
{
log
.
warn
(
'
PuppetWebBridge
'
,
'
quit() exception: %s
'
,
e
&&
e
.
message
||
e
)
// throw e
/* fail safe */
this
.
emit
(
'
error
'
,
e
)
}
}
public
async
getUserName
():
Promise
<
string
>
{
...
...
@@ -681,7 +674,7 @@ export class Bridge extends EventEmitter {
log
.
silly
(
'
PuppetWebBridge
'
,
'
clickSwitchAccount() clicked!
'
)
return
true
}
else
{
log
.
silly
(
'
PuppetWebBridge
'
,
'
clickSwitchAccount() button not found
'
)
//
log.silly('PuppetWebBridge', 'clickSwitchAccount() button not found')
return
false
}
}
catch
(
e
)
{
...
...
src/puppet-web/puppet-web.ts
浏览文件 @
f708ea8e
...
...
@@ -219,16 +219,15 @@ export class PuppetWeb extends Puppet {
}
public
async
quit
():
Promise
<
void
>
{
log
.
verbose
(
'
PuppetWeb
'
,
'
quit() state OFF: %s
'
,
this
.
state
.
off
(),
)
log
.
verbose
(
'
PuppetWeb
'
,
'
quit()
'
)
if
(
this
.
state
.
off
()
===
'
pending
'
)
{
const
off
=
this
.
state
.
off
()
if
(
off
===
'
pending
'
)
{
const
e
=
new
Error
(
'
quit() is called on a PENDING OFF PuppetWeb
'
)
log
.
warn
(
'
PuppetWeb
'
,
e
.
message
)
this
.
emit
(
'
error
'
,
e
)
return
}
else
if
(
this
.
state
.
off
()
===
true
)
{
}
else
if
(
off
===
true
)
{
log
.
warn
(
'
PuppetWeb
'
,
'
quit() is called on a OFF puppet. return directly.
'
)
return
}
...
...
@@ -239,21 +238,15 @@ export class PuppetWeb extends Puppet {
this
.
state
.
off
(
'
pending
'
)
try
{
if
(
this
.
bridge
)
{
await
this
.
bridge
.
quit
()
setImmediate
(()
=>
this
.
bridge
.
removeAllListeners
())
}
else
{
log
.
warn
(
'
PuppetWeb
'
,
'
quit() no bridge!
'
)
}
await
this
.
bridge
.
quit
()
// register the removeListeners micro task at then end of the task queue
setImmediate
(()
=>
this
.
bridge
.
removeAllListeners
())
}
catch
(
e
)
{
log
.
error
(
'
PuppetWeb
'
,
'
quit() exception: %s
'
,
e
.
message
)
Raven
.
captureException
(
e
)
throw
e
}
finally
{
this
.
state
.
off
(
true
)
// register the removeListeners micro task at then end of the task queue
// setImmediate(() => this.removeAllListeners())
}
}
...
...
src/wechaty.ts
浏览文件 @
f708ea8e
...
...
@@ -477,13 +477,13 @@ export class Wechaty extends EventEmitter implements Sayable {
return
}
const
puppetBeforeDie
=
this
.
puppet
const
puppet
=
this
.
puppet
this
.
puppet
=
null
config
.
puppetInstance
(
null
)
try
{
await
puppetBeforeDie
.
quit
()
setImmediate
(()
=>
puppetBeforeDie
.
removeAllListeners
())
await
puppet
.
quit
()
}
catch
(
e
)
{
log
.
error
(
'
Wechaty
'
,
'
stop() exception: %s
'
,
e
.
message
)
Raven
.
captureException
(
e
)
...
...
@@ -494,7 +494,7 @@ export class Wechaty extends EventEmitter implements Sayable {
// MUST use setImmediate at here(the end of this function),
// because we need to run the micro task registered by the `emit` method
// setImmediate(() => this
.removeAllListeners())
setImmediate
(()
=>
puppet
.
removeAllListeners
())
}
return
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录