λ
Έλ - v9.2.0
VK-IO - 4.0.0-μν.8
μν μ체:
if (!message.hasText() && message.isOutbox() && message.text[0] !== '/' && message.getChatId() != 4) return next();
let command = message.text.split(" ")[0].slice(1).toLowerCase()
(μ€λ₯λ λ§μ§λ§ μ€μ κ°λ¦¬ν΄)
Handle polling update error: TypeError: Cannot read property 'split' of null
at vk.updates.on (/home/bots/vk/vk.js:198:29)
at Array.use (/home/bots/vk/node_modules/vk-io/lib/updates/index.js:136:15)
at next (/home/bots/vk/node_modules/middleware-io/lib/middleware.js:80:22)
at stack.(anonymous function) (/home/bots/vk/node_modules/middleware-io/lib/middleware.js:80:34)
at Array.use (/home/bots/vk/node_modules/vk-io/lib/updates/index.js:140:13)
at next (/home/bots/vk/node_modules/middleware-io/lib/middleware.js:80:22)
at Middleware.run (/home/bots/vk/node_modules/middleware-io/lib/middleware.js:87:10)
at Updates.dispatchMiddleware (/home/bots/vk/node_modules/vk-io/lib/updates/index.js:678:28)
at Updates.handlePollingUpdate (/home/bots/vk/node_modules/vk-io/lib/updates/index.js:213:23)
at Promise.all.response.updates.map (/home/bots/vk/node_modules/vk-io/lib/updates/index.js:660:22)
if (message.isOutbox() || message.getChatId() !== 4 || !message.hasText() || message.getText()[0] !== '/') {
await next();
}
νλΉν μ΄μ λ‘, 보λ΄λ λ©μμ§κ° νμνμ§ μμμ§ νμΈνκΈ° μν΄ isOutboxλ₯Ό λ³λλ‘ κΊΌλ΄μμμ€.
if (message.isOutbox()) {
return;
}
μ΄μ 2κ°μ μ€λ₯κ° μμ΅λλ€.
Handle polling update error: Error: next() called multiple times
at next (/home/bots/vk/node_modules/middleware-io/lib/middleware.js:69:11)
at stack.(anonymous function) (/home/bots/vk/node_modules/middleware-io/lib/middleware.js:80:34)
at vk.updates.on (/home/bots/vk/vk.js:376:15)
at <anonymous>
at process._tickDomainCallback (internal/process/next_tick.js:228:7)
Handle polling update error: TypeError: Cannot read property 'split' of null
at vk.updates.on (/home/bots/vk/vk.js:200:33)
at <anonymous>
at process._tickDomainCallback (internal/process/next_tick.js:228:7)
μ½λλ μΌλ°μ μΌλ‘ μ΄λ»κ² μκ²Όμ΅λκΉ?
376λΌμΈ λ§μνμλ건κ°μ?
κ·Έ μ μ λ€λ₯Έ ν
μ€νΈμ μΌμΉμ λν λ§μ κ²μ¬κ° μκ³ 376νμλ else await next();
μ κ²λ€. μΌμΉνλ νλͺ©μ΄ μμΌλ©΄ λ€μμ κΈ°λ€λ¦½λλ€()
next()
κ° μ¬λ¬ λ² νΈμΆλκ³ μμμ λνλ
λλ€.μκ² μ΅λλ€. 첫 λ²μ§Έ μ€λ₯λ‘ ν΄κ²°ν μ μμ κ² κ°μλ° λ λ²μ§Έ μ€λ₯λ μ΄λ»κ² ν΄μΌ νλμ?
message.getText()μμ nullμ΄ λνλλ μ΄μ λ 무μμ
λκΉ?
ν μ€νΈκ° μκΈ° λλ¬Έμ λλ€.
context.hasText() ν¨μκ° μ΄λ₯Ό νμΈν΄μΌ νμ§ μμ΅λκΉ?
hasText()
λ©μλλ ν
μ€νΈκ° μμΌλ©΄ true
λ°ννκ³ κ·Έλ μ§ μμΌλ©΄ false
λ°νν©λλ€. λ΄κ° λ§νλ―μ΄ λ¬Έμ λ μΌλ ¨μ κ²μ¬μ μμ΅λλ€.
κΈμ, λλ λΉμ μ μΌλ ¨μ κ²μ¬λ₯Ό λ°μκ³ κ·Έκ²μ λ¬Έμ κ°μμμ΅λλ€.
if (message.isOutbox() || message.getChatId() !== 4 || !message.hasText() || message.getText()[0] !== '/') {
await next();
}
μ΄ μ½λλ‘ μ 체 κ·Έλ¦Όμ λ³Ό μ μμ΅λλ€. μ‘°κ±΄μ΄ μλͺ» λ°°μΉλμκ±°λ Promise λ―Έλ€μ¨μ΄κ° μλνλ λ°©μμ λν μμ ν μ€ν΄λ‘ μΈν΄ μ€λ₯κ° λ°μν©λλ€.
λ΄ κ΄μ μμ μ½λμ ꡬ쑰λ₯Ό λ μ νν κ΅¬μ‘°λ‘ λ³κ²½νμ΅λλ€. μ€λ₯κ° κ΅¬μ‘° 곑μ μΌλ‘ μΈν κ²μΈμ§ λ΄ μλ€.
λλ λν νλ‘μ μ λ³΄κ° μ΄λκ°μ μ¬λΌμ§ κ²μ λ°κ²¬νμ΅λλ€.
μ§μμ μ κ±°νμ΅λκΉ?
μ§μμ λ¨μ μμ§λ§ μ΄μ νλ‘μμ https μμ΄μ νΈλ₯Ό μ¬μ©ν΄μΌ ν©λλ€.
μ¬μ© λ°©λ²μ λν μ 보λ μ΄λμμ μ°Ύμ μ μμ΅λκΉ?
κ·Έλ¦¬κ³ λ λμκ°...
λν¬μ μ²μ·¨ν μ μλ λͺ¨λ μ΄λ²€νΈ λͺ©λ‘μ΄ μλ κ² κ°μ΅λλ€.
μΆκ°ν΄μ£Όμλ©΄ μ’μ κ² κ°μ΅λλ€)
κΈμμ, μΌλ°μ μΌλ‘ ꡬκΈλ§ https proxy agent
νλ©΄ μΆ©λΆν©λλ€. λμ€μ ν΄λ³Ό μκ°μ
λλ€.
λ¬Έμλ₯Ό μμ±ν μκ°μ΄ κ±°μ μμ§λ§ μ΄λ»κ²λ μ λ κ²μ΄λΌκ³ μκ°ν©λλ€.
νλ‘μλ₯Ό λ€μ μ¬μ©ν νμκ°μμμ΅λλ€ ...
λΉμ μ λμκ΄κ³Ό ν¨κ» μ¬μ©νλ μλ₯Ό 보μ¬μ€ μ μμ΅λκΉ?
μ΅μ μμ μμ΄μ νΈ κ΅¬νμ μ λ¬ν΄μΌ ν©λλ€. https-proxy-agent λͺ¨λμ΄ μ΄μ μ ν©ν μ μμ΅λλ€.
μ΄λ€ μ΅μ μ΄ μμ΅λκΉ?
vk.setOptions({ μμ΄μ νΈ });
κ°μ¬ ν΄μ
κ°μ₯ μ μ©ν λκΈ
vk.setOptions({ μμ΄μ νΈ });