Ответы пользователя по тегу JavaScript
  • Написал интервалы для проверки на мут и бан, не правильно работает?

    zdev-online
    @zdev-online
    Backend Node.JS Developer
    Проверяй на наличие мута либо через Cron, либо непосредственно при поступлении от пользователя сообщения и только тогда проверяй, и если нужно снимай его.

    vk.updates.on('message_new', async (ctx, next) => {
    	if (!ctx.isChat) return await next();
    
    	await mongo.models.chatsusers.findOneAndUpdate(
    		{
    			muted: true,
    			mutedTime: { $lte: now },
    			vkId: ctx.senderId,
    			join_chat: ctx.chatId,
    		},
    		{
    			muted: false,
    			mutedTime: 'None',
    			mutedReason: 'None',
    		},
    	);
    
    	await mongo.models.chatsusers.findOneAndUpdate(
    		{
    			banned: true,
    			bannedTime: { $lte: now },
    			vkId: ctx.senderId,
    			join_chat: ctx.chatId,
    		},
    		{
    			banned: false,
    			bannedTime: 'None',
    			bannedReason: 'None',
    		},
    	);
    });
    Ответ написан
    Комментировать
  • Как сверить в обработчике пайлоад?

    zdev-online
    @zdev-online
    Backend Node.JS Developer
    const hearManager = new HearManager<MessageContext>();
    
    vk.updates.on('message_new', hearManager.middleware);
    
    hearManager.hear({ "payload.command": "messages" }, async (context) => {
    	await context.send("Update with commands == messages");
    });


    Модуль: npm install @vk-io/hear
    Ответ написан
    Комментировать
  • Почему возникает ошибка 411 Length Required?

    zdev-online
    @zdev-online
    Backend Node.JS Developer
    Код ответа на ошибку 411 Length Required указывает, что сервер отказывается принять запрос без определённого Content-Length. Обратите внимание, что по спецификации при отправке данных в ряд фрагментов Content-Length опущен, и в начале каждого фрагмента вам нужно добавить длину текущего фрагмента в шестнадцатеричном формате.


    Секретные документы
    Ответ написан
    Комментировать
  • Как исправить "io is not defined"?

    zdev-online
    @zdev-online
    Backend Node.JS Developer
    Клиент:
    <script src="/socket.io/socket.io.js"></script>

    Сервер:
    io.serveClient(true);
    Ответ написан
    Комментировать
  • Как остановить выполнение кода пока не нажато на кнопку?

    zdev-online
    @zdev-online
    Backend Node.JS Developer
    Сделай функцию асинхронной.
    window.alert = (...args) => new  Promise(resolve => {
      let string = "";
      for (let arg of args) {
        string += String(arg).replaceAll('<', '&lt;');
      }
      let alertAndroid = document.createElement("android-alert");
      alertAndroid.style.cssText = `
      width: 84.3%;
      display: block;
      border: 2px #333436 solid;
      position: fixed;
      left: 4.4%;
      margin: auto;
      top: 30%;
      padding: 10px;
      word-break: break-all;
      border-radius: 20px;
      background: #333436;
      color: white;`;
      alertAndroid.innerHTML = `<spam>${string}</spam><br>
      <button id="__android_ok_alert">OK</button>`;
      document.body.appendChild(alertAndroid);
      document.querySelector("#__android_ok_alert").onclick = function() {
        this.parentNode.remove();
        return resolve();
      }
    }});
    
    // Где-то позже
    async function(){ 
      await alert(2);
      console.log(1);
    }
    Ответ написан
    1 комментарий