Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (2)

Наибольший вклад в теги

Все теги (19)

Лучшие ответы пользователя

Все ответы (56)
  • Грамотно ли написан код?

    @StiflerProger
    В вашем коде от цикла нет смысла, если без цикла просто
    document.write(week.slice(0,-2).join(',') + ',' + week.slice(-2).join(',').bold());

    то код хороший
    в цикле надо перебирать по одному дню и выводить
    const week = ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье'];
    
    for (let i = 0; i < week.length; i++) {
      if (week[i] === 'Суббота' || week[i] === 'Воскресенье') {
        document.write(week[i].bold());
      } else {
        document.write(week[i]);
      }
    }

    чтобы не сравнивать выходные по названию, можно вместо строк использовать объекты
    const week = [{title: 'Понедельник', weekend: false}, ... {title: 'Воскресенье', weekend: true}];
    
    for (let i = 0; i < week.length; i++) {
      document.write(week[i].weekend ? week[i].title.bold() : week[i].title);
    }
    Ответ написан
    3 комментария
  • Как парсить сайты на технологии web socket?

    @StiflerProger
    const WebSocket = require('ws');
    
    const ws = new WebSocket('wss://dallas.tx.publicsearch.us/ws', {
      headers: {
        "Origin": "https://dallas.tx.publicsearch.us",
        "Cookie": "authToken=51f69ac5-67c5-41ac-8943-cace7ebc6b3c; authToken.sig=x9S_G8Lwy6KHaB2Ek4PT1PR7jhE;"
      }
    });
    
    ws.on('open', () => {
      console.log('Соединение открыто');
    });
    
    ws.on('close', (code, reason) => {
      console.log('Соединение закрыто', code, reason);
    });


    у всех сайтов свои тараканы будут) к примеру в том что я скинул выше. Тебе обязательно передавать в заголовке запроса Origin и Cookie. Если с первым все ясно, то первая проблема будет с куками. Их как я понял можно получить сделав обычный GET запрос на главную. Тебе эти куки передадут в Response Headers
    606c101d381a7125759663.png

    https://www.npmjs.com/package/ws

    После удачного коннекта, не забывай потом слать пинги ) Формат пингов уже посмотришь во вкладке Network в браузере
    Ответ написан
    Комментировать
  • Как в javascript расшифровать зашифрованный (aes-128-ecb) текст в php?

    @StiflerProger
    function decrypt(encryptedText, key) {
      var decryptedBytes = CryptoJS.AES.decrypt(
        {
          ciphertext: CryptoJS.enc.Base64.parse(encryptedText)
        },
        CryptoJS.enc.Utf8.parse(key),
        { mode: CryptoJS.mode.ECB }
      );
      
      var plaintext = decryptedBytes.toString(CryptoJS.enc.Utf8);
      return plaintext;
    }
    
    var encryptedText = "P6WsUEHMRTa620LtYJ3Nqu9yKhGev0ZL4Ps+z61kWN4="; // Замените на свой зашифрованный текст
    var key = "mysecretpassword"; // Замените на свой ключ
    
    var decryptedText = decrypt(encryptedText, key);
    console.log("Decrypted Text:", decryptedText);
    Ответ написан
    Комментировать
  • Как работать с большим количеством запросов?

    @StiflerProger
    Просто каждый запрос делай в транзакции с "select for update".
    1. Сразу после получения запроса ставишь блок "select for update".
    2. Проводишь валидацию данных. Проверяешь оплату в другой таблице и тп.
    3. Добавляешь 10 рублей юзеру.

    Если у тебя юзер может даже после этого добавить себе 1000 раз по 100 рублей, то проблема в шаге #2.
    Т.е. твой момент с "более ее увеличивать нельзя" должен проверяться в шаге #2.
    Ответ написан
    Комментировать