• Существует ли VPN кабель?

    CityCat4
    @CityCat4 Куратор тега VPN
    //COPY01 EXEC PGM=IEBGENER
    Господа админы Тостера! Предлагаю учредить конкурс на звание "самый дебильный вопрос" :) и рассмотреть данного кандидата :)
    Фраза "В кабель втыкается провод из роутера..." достойна быть увековеченной в граните...
    Ответ написан
    8 комментариев
  • Альтернативы wireguard?

    @apppostol
    Гугл тоже перестал работать? 3x-ui xray vless reality в помощь. Мануал думаю сами найдете.
    Ответ написан
    Комментировать
  • Как определить, что пользователь использует официальную версию клиента программы?

    @rPman
    Только разместив ключевую часть алгоритма его работы на своем сервере, требуя доступ приложению к нему по сети, можно получить какие то гарантии, в пределах стоимости ревносинжегеринга и воспроизведения ее пользователем самостоятельно.

    Вырожденный и достаточно простой способ реализации - запуск всего приложения на своем сервере с предоставлением удаленного доступа (например по ms rdp) и тщательной настройкой рабочего места пользователя на сервере в режиме киоск (что бы нельзя было получить доступ к файлам программы для их копирования).

    Все иные простые способы будет взломаны, как только это кому либо понадобится достаточно сильно.
    Ответ написан
    Комментировать
  • Где взять бэкенд для фронтенд учебного проекта?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Комментировать
  • Как получить промежуточное значение между двух слов?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Без регулярки:
    const url = 'www.site.ru/users/agent/512/list/france';
    const parts = url.split('/');
    const agentIndex = parts.indexOf('agent');
    const value = parts[agentIndex + 1];
    console.log(value); // 512

    с регуляркой:
    const url = 'www.site.ru/users/agent/512/list/france';
    const match = url.match(/\/agent\/(\d+)\/list/);
    const value = match ? match[1] : null;
    console.log(value); // 512
    Ответ написан
    Комментировать
  • Curl смог, а злосчастный fetch (firefox) не может?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    CORS API ограничивает запросы с Вашего домена (Вы же выполняете js код в браузере?). Даже если Вы укажите no-cors, то API домен все равно принимает окончательное решение.

    Вам нужен любой сервер, для проксирования запроса. Выполните свой код на nodejs, и все заработает:
    import fetch from 'node-fetch';
    import {create} from './create.js';
    
    const url = 'https://api.site.ru/endpoint';
    const TOKEN = 'TOKEN';
    
    const options = {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Basic ${Buffer.from(`${TOKEN}:`).toString('base64')}`,
      },
      body: JSON.stringify({
        date: {
          from: '2024-07-01T00:00:00',
          to: '2024-07-09T00:00:00',
        },
      }),
    };
    
    fetch(url, options)
      .then((response) => response.json())
      .then((result) => create(result))
      .catch((error) => console.error(error.message));
    Ответ написан
    Комментировать
  • Как вам аргумент за выбор React Query вместо RTK Query?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    https://ru.stackoverflow.com/questions/1529010/rea...

    https://www.reddit.com/r/reactjs/comments/15ucdx7/...
    acemarke

    Hi, I'm a Redux maintainer.

    Both the Redux and React Query teams recommend that:
    - If you are using Redux in the app, you should use RTK Query for your data fetching.
    - Otherwise, you should use React Query for you data fetching.

    But mixing Redux + React Query doesn't make any sense.
    Ответ написан
    Комментировать
  • Как сделать чтобы git pull работал для всех веток?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Чтобы git pull без указания репозитория и ветки сам понял откуда брать обновления, вы должны эту информацию ранее сообщить гиту. Потому что внешний репозиторий не обязан называться origin, а название внешней ветки не всегда совпадает с локальной. Вы читали подсказку которую вам гит дал при неудачной git pull? Там он вам сообщил, что текущая локальная ветка не связана ни с какой веткой внешнего репозитория и подсказал какой командой эту связь создать. Но обычно мы эту связь создаем автоматически при первой отправке новой ветки, добавив ключик -u в команду push. Полное название ключа --set-upstream. Когда вы пушите через графический интерфейс, то там тоже должна быть галка для этого.
    Ответ написан
    Комментировать
  • Может ли пользователь сменить переменную JS?

    @Zukomux
    Баланс всегда должен приходить с сервера. Даже если пользователь совершил какую-то операцию, после этого необходимо заново запросить баланс. И считать единственным источником истины только результат верного ответа. Несмотря на то, что на фронте можно нарисовать любые цифры, на сервере всего будет истинное значение
    Ответ написан
    Комментировать
  • Может ли пользователь сменить переменную JS?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    То, что нельзя доверять данным полученным с клиента - это общеизвестное правило.
    Ответ написан
    Комментировать
  • Как создать платную лицензию для программы на C++?

    @alexalexes
    1. Пользователь вводит ключ.
    2. Программа отправляет ключ на ваш сервер вместе с фингерпринтом железа.
    3. При первом запросе ваш сервер вписывает фингерпринт железа в профиль ключа и дату истечения действия ключа.
    4. Если дата не истекла и фингерпринт не менялся по ключевым характеристикам (например, модель и серийник материнской платы), то отправляем программе ответ, что пользователь может использовать полный функционал.
    Если дата истекла или существенно поменялся фингерпринт, то отправляем сообщение об ошибке.
    5. Оборачиваем сообщения в асимметричное шифрование. Применяем протоколы ЭЦП - по вкусу.
    Ответ написан
    2 комментария
  • На чём писать клиентское приложение с GUI?

    Можно посмотреть в сторону PWA и кэшировать данные в local storage или на диск.
    Ответ написан
    Комментировать
  • Как переписать код на более современный JS?

    @historydev Куратор тега JavaScript
    Редактирую файлы с непонятными расширениями
    Всё с этим кодом в плане "современности" нормально.
    А вот в плане читаемости и переиспользования - нет.

    Можно например вот так переписать:

    const menu = document.querySelector('.burger-menu');
    const menuList = document.querySelector('.menu__list');
    const activateMenu = () => (menuList.classList.toggle('active-menu'), menu.classList.toggle('active'));
    
    menu.addEventListener('click', activateMenu, true);
    Ответ написан
    2 комментария
  • Существует ли максимально простой и универсальный способ сборки проектов с GitHub в готовый exe?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    там очевидно просматривается *.sln
    на гит уже давно есть опция "открыть в визуал студии" что то изменилось опять.. ((
    проще некуда.. тем не менее, в самой студии точно можно..
    может и vc code справится, но сам сижу на виндовой студии, коду так и не освоил

    ps
    Обычно это компилируется в exe, насколько понимаю, в Visual Studio. Но я не знаю как ее правильно установить, какие модули подключать и все такое прочее. Ставить все и сразу - 30гб места. Довольно много и мощно.
    ставьте "десктоп". это минималка и оч даже осмыслено. если будете продвигаться - всегда пригодится.
    ... далее, если возникают зависимости, студия сама сообщит, и как правило предложит догрузить необходимое..
    .. и как правило верно предложит.. но не гарантия что всегда ;))

    pps потом скачиваете zip, распаковываете, и открываете *.sln
    а если будете развиваться, со временем разберетесь и в более сложных вариантах ))
    Ответ написан
    Комментировать
  • Почему конвертируемый код Python в EXE блокирует антивирус?

    @rPman
    Безотносительно к способу создания exe из python, рассылка exe по почте это уже маркер для антивирусов, это классический путь распространения вредоносов и нормальной практикой вообще считается блокировка этого типа контента.

    Типовые способы решения такой проблемы - упаковать exe файл (при необходимости с паролем), но это неправильное решение. Так же можно передавать на exe файл ссылку, для загрузки из интернета, а не сам файл. В этих случаях за проверку будут отвечать антивирусы уже на локальных машинах а не правила на почтовом сервере.

    Правильным решением является получение цифровой подписи (получать у майкрософт, не бесплатно, кажется что то типа 100$ в год) и подписывать свое приложение этой подписью, для антивирусников это четкий сигнал что приложение не вредонос (так как если оно таковым окажется, будет ясно кого наказывать).

    Так же, помимо получения цифровой подписи, настоятельно рекомендуется распространять свое приложение не в виде exe файла а в виде установочного пакета (например как приложение microsoft store или msi). При использовании microsoft store за обновлением приложений будет уже отвечать операционная система, т.е. доставкой и переустановкой пользователю не придется заниматься (на самом деле придется, но значительно проще, ведь автообновление не моментальное, а значит топать в настройки обновлений и кликать кнопку - скачать обновления) но это правильный способ.

    upd. https://learn.microsoft.com/ru-ru/windows/apps/pub...
    Ответ написан
    Комментировать
  • Как лучше загрузить сайт на React на GitHub для доказательства, что он действительно на React?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    этот вопрос у меня относится к удобству чтения кода и просмотра сайта другими пользователями, чтобы они удостоверились в разработке на React.

    В репу заливается весь проект, исключая зависимости, так, чтобы можно было скопировать проект себе на локалку, поставить зависимости и:
    - Запустить в режиме разработки одной командой.
    - Собрать проект одной командой.
    - Выполнить тесты одной командой.

    Либо, чтобы из репы можно было скопировать лишь dist/ и сразу опубликовать это как приложение в любом месте, без дополнительных команд.
    От такого способа не будет видно, что применялся Реакт?

    Слепой не увидит ничего, в остальном - все чекается на раз-два.

    Рекомендую изучить крупные репы и обратить внимание на то, что там в рамках одной репы имеются исходники (src), сборки разных видов (dist/build), опубликованы все необходимые команды так, чтобы даже не зрячая обезьянка могла скопировать и выполнить эту команду, чтобы получить желаемый результат.
    Ответ написан
    1 комментарий
  • Как с помощью php отдать react?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Как я уже не раз говорил, чтобы получить ответ на свой вопрос, надо сначала разобраться с кашей у себя голове.
    Вас же на первом же шаге унесло не туда.

    jQuery уже в прошлом

    это правда

    его теснят фреймворки типа react

    а это уже чушь собачья
    jQuery - это был костыль, позволявший выполнять определенные задачи, которые было невозможно или слишком сложно выполнить на чистом JavaScript. Но уже больше 10 лет нужда в этом костыле полностью отпала
    К фреймворкам типа React этот костыль не имеет никакого отношения вообще.
    Для замены jQuery вам нужно просто выучить Яваскрипт.

    Реакт же - это, условно говоря, способ построения приложения. Его можно учить, а можно не учить. Вы можете продолжать использовать обычный подход, когда HTML рендерится на сервере в ответ на каждый запрос.

    При использовании реакта, сначала загружаются его статические файлы. обычно это делается через отдельный веб-сервер, на котором крутится приложение, написанное на js. и эту вашу проверку можно делать там.
    но в принципе вы можете отдавать их и РНР скриптом. HTML отдавать через РНР умеете? Ну вот и отдавайте.

    Но повторюсь, это только если вам действительно нужен реакт. А для замены jquery он не нужен.

    404й редирект

    для начала, такой вещи, как "404й редирект" в природе не существует.
    Бывает либо редирект (коды ответа 3хх), либо 404. Два НТТР статуса вы никогда не отдадите.

    при этом сама по себе дурацкая задача "если пользователь пришёл с определенного ip и ему нужно отдать 404" вообще никакого отношения к обсуждаемому вопросу не имеет. И решать ее по-хорошему надо на уровне веб-сервера. Если вообще надо, в чем есть большие сомнения.
    Ответ написан
    4 комментария
  • Как найти первую стажировку или работу джуна по python?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    нет желании для учебу

    Идти в доставку. Самокат, Яндекс.Еда, СберМаркет...

    В ИТ учатся всю карьеру. Если ты думаешь, что вот сейчас выучусь, найду работу - и все, то лучше не начинай :) Потому что учится придется до пенсии - это вот такая специфика.

    Где найти первую работу? Там где небольшое предложение - в школах/больницах/библиотеках, вообще в муниципалке. Там крошечные зарплаты, там старое железо, там могут оказаться легаси "времен очаковских и покоренья Крыма" - но это будет стаж :)
    Ответ написан
    Комментировать
  • Что стоит использовать для защиты PHP-кода на текущий момент?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Сообщество считает, что всё это бессмысленные ужимки, которые в 99% случаев используются только для того, чтобы прикрыть крайнее убожество кода. Серьёзные продукты никто не шифрует. Чем, в частности, объясняется заброшенность всех этих, на первый взгляд многочисленных, проектов, которые не выходят из стадии "мы тут с одноклассниками придумали крутую штуку". потом одноклассники либо умнеют и перестают теребить ерунду, либо находят занятие более интересное, чем пхпе.

    Сам по себе код мёртв. Он устарел ещё до релиза. В работе софта важна не дискетка с исходниками, а поддержка. Вот поддержку и надо продавать. И не дрожать над каждым вором. Потому что защита от одного вора отпугивает 10 честных покупателей.

    Плюс всегда есть SAAS.
    Ответ написан
    4 комментария
  • В поиске первой работы програмистом, предлагают бесплатную стажировку. Соглашаться?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Народ тут накинул на вентилятор, попробую раскидать по фактам: Варианта на самом деле 3, но мы сведем к очевидным 2:
    1) Вы ищете первую работу в стеке, из опыта у вас приложение ТуДуЛист и Хеловорлд.
    Такое предложение как минимум подарок, как максимум большая удача. Подарок если вам просто дадут поколупаться в серьезном проекте и покажут как работает команда в целом. Большая удача если при этом у вас будет вменяемый ментор и ревьювер, а кода писать вам дадут много. Для конторы это скорее всего в минус, но если у вас все пойдет норм, то к концу срока вы в любом случае уже будете тянуть на джуна. Даже если после этого вы расстанетесь, опыт штука которая навсегда останется с тобой, в крайнем случае вы в первый месяц можете спокойно свалить, если видите что вам там ничего не светит в плане роста. Короче кейс - "надо брать".

    2) Вы уже работали со стеком, знаете как работать с основными инструментами и работали с проектами посложнее чем в первом варианте.
    Если еще и в конторе с какой-никакой командой, то вообще другой коленкор. В данном случае спокойно отказывайтесь, если вам жалко 3 месяца нахаляву работать. Опять же, неплохо было бы хотя бы узнать что в эти 3 месяца вы будете делать забесплатно, возможно ли перейти сразу к фазе 2 в случае вашей очевидной компетенции и т.д., короче есть смысл разговаривать ртом. Короче кейс - "надо поговорить".

    третий вариант по сути нечто среднее, но опять же сводится к 2 - надо говорить.
    Ответ написан
    3 комментария