• Почему не идут запросы GET/POST через POSTMAN?

    alekciy
    @alekciy
    Вёбных дел мастер
    У вас ошибка в header('Content-type: json/aplication'); Правильной это Content-Type: application/json
    Вообще рекомендую Insomnia. Одну из проблем которую я вижу в Postman это отсутствие выставления автоматических Content-Type. Insomnia же делает это сама в зависимости от типа тела запроса.
    Ответ написан
    Комментировать
  • Из за чего не подключаются стандартные скрипты и стили в админке Битрикс?

    yuraSco
    @yuraSco Автор вопроса
    В конфиге apache надо было убрать:
    <LocationMatch "/\.(?!well-known)">
        Require             all denied
    </LocationMatch>
    Ответ написан
    7 комментариев
  • Почему jetBrains не русифицирует свои продукты?

    Да, действительно команда jetBrains не горит желанием русифицировать свой продукт.
    Однако для таких вещей как орфография вы можете скачать русский язык.
    Это можно сделать на официальном сайте по ссылке https://plugins.jetbrains.com/plugin/1784-spell-ch...

    С скачаного архива скопировать файл «/home/weblogic/Downloads/spellchecker-dict-russian/lib/spellchecker-dict-russian.jar» и переименовать его в «russian.dic«. Теперь осталось в настройках PhpStorm в File -> Settings -> Spelling dialog, вкладка “Dictionaries” нажать на «Add» и выбрать папку в которой ранее сохранили файл «russian.dic«.
    Ответ написан
    Комментировать
  • Как правильно управлять заголовками и мета-тегами в vuejs head, meta, title, etc?

    https://www.npmjs.com/package/vue-meta

    Юзаете:
    main.js
    import Meta from 'vue-meta';
    Vue.use(Meta);


    В роутере у вас каждому роуту соответствует какой-то компонент-страница:

    router.js
    import HomePage from '../components/pages/Home.vue';
    new Router({
        routes: [
          {
            name: 'home',
            path: '/',
            component: HomePage,
          },
    });


    В компоненте описываете нужные мета-данные

    components/pages/Home.vue:
    <script>
    export default {
        metaInfo: {
          title: 'Vue App',
          meta: [
            { vmid: 'description', property: 'description', content: 'Vue App' },
            { vmid: 'og:title', property: 'og:title', content: 'Vue App' },
            { vmid: 'og:description', property: 'og:description', content: 'Vue App' },
          ],
        },
      };
    </script>


    В общем-то в документации всё расписано: https://github.com/declandewet/vue-meta
    С серверным рендерингом так же работает, но там больше заморочек.
    Ответ написан
    1 комментарий
  • Человекопонятные даты в js на русском языке?

    DenZzeuro
    @DenZzeuro
    Мотоциклы, кофе
    new Date().toLocaleString('ru', {
    			  year: 'numeric',
    			  month: 'long',
    			  day: 'numeric'
    			});
    Ответ написан
    2 комментария
  • Расскажите подробно про php://input, как пользоваться?

    php://input возвращает все необработанные данные после HTTP-заголовков запроса, независимо от типа контента.

    Данные, могут быть:
    • application/x-www-form-urlencoded ( application/x-www-form-urlencoded тип application/x-www-form-urlencoded для простых форм- application/x-www-form-urlencoded ) или
    • multipart/form-data-encoded (в основном multipart/form-data-encoded для загрузки файлов)

    Это связано с тем, что это единственные типы контента, которые должны поддерживаться браузерами. Поэтому сервер и PHP традиционно не ожидают получения какого-либо другого типа контента (что не означает, что они не могли бы).

    Если вы просто отправляете POST-ом обычную HTML-форму, запрос выглядит примерно так:
    POST /page.php HTTP/1.1
    key1=value1&key2=value2&key3=value3

    Но если вы много работаете с Ajax, может понадобиться обмен более сложными данными с типами (строка, int, bool) и структурами (массивы, объекты), поэтому в большинстве случаев JSON является лучшим выбором. Но запрос с JSON-полезной нагрузкой выглядел бы примерно так:
    POST /page.php HTTP/1.1
    {"key1":"value1","key2":"value2","key3":"value3"}

    Теперь содержимое будет application/json (или, по крайней мере, ни один из вышеперечисленных), так что $_POST -wrapper из PHP не знает, как с этим справиться (пока).

    Данные всё еще там, вы просто не можете получить к нему доступ через $_POST. Поэтому вам нужно получить его с "сыром" виде помощью file_get_contents('php://input') (если он не закодирован в формате multipart/form-data).

    Это также способ доступа к XML-данным или любому другому нестандартному типу контента.
    Ответ написан
    Комментировать
  • В чем принципиальное отличие функций $APPLICATION->ShowTitle() и $APPLICATION->GetTitle()?

    New_Horizons
    @New_Horizons
    Бред:
    Да.
    Ответ написан
    Комментировать
  • Как запустить скрипт в VSC?

    romash
    @romash
    web-разработчик
    Чтобы запустить скрипт в терминале, вам нужен интерпретатор. Для js это NodeJS.
    После установки нужно будет перезагрузить VSC, чтобы она его увидела. Чтобы убедиться в том, что интерпретатор установлен и доступен, вбейте в терминале
    node -v
    эта команда выведет версию установленного NodeJS.
    Чтобы запустить скрипт lesson.js достаточно написать в терминале
    node lesson.js
    или даже
    node lesson

    Правда, учитывая то, что у вас VSC, может быть удобнее воспользоваться ей, чем терминалом (NodeJS всё равно нужно установить):
    Для начала у вас должна быть папка проекта, а не просто файл открытый в VSC (создайте папку, положите туда свои скрипты, которые хотите запускать, в VSC Файл -> Открыть папку и выбирайте созданную папку).
    На левой панели есть кнопка с изображением жука, которая открывает панель отладки. В этой панели сверху у вас будет написано "Нет конфигурации". Вам нужно нажать на шестерёнку рядом, если появится выбор, выбрать Node. Будет создан файл конфигурации отладки, после чего сможете смело открывать свои скрипты, ставить точки останова, нажимать в панели отладки зелёную стрелочку и радоваться.
    Ответ написан
    Комментировать
  • Что такое php процесс?

    @D3lphi
    Из википедии:
    Проце́сс — программа, которая выполняется в текущий момент.


    Ну вот смотрите: Пользователь перешел на ваш сайт (site.ru/test.php). Веб-сервер обработал запрос, понял то, что файл имеет расширение .php, а значит, его необходимо обработать при помощи PHP, Обратился к пакетному менеджеру fast-cgi и запустил новый PHP процесс. Тот в свою очередь начал выполнять код, написанный в файле test.php. Он отработал и отдал данные для вывода информации веб-серверу. На этом, php процесс "умер". Веб-сервер отдал информацию в браузер пользователя.
    Ответ написан
    3 комментария
  • Как с помощью чистого JS узнать id родительского элемента?

    Krasnodar_etc
    @Krasnodar_etc
    fundraiseup
    Как с помощью чистого JS узнать id родительского элемента?


    this.parentNode.id;

    что должно быть написано в функции removeItem() ?


    А это уже смотря, что должна делать кнопка. Я не очень понял, что вам надо и какое всплытие имеется ввиду
    Ответ написан
    Комментировать
  • Замыкания в javascript, почему не работает?

    Krasnodar_etc
    @Krasnodar_etc
    fundraiseup
    Рабочий вариант -
    var a = 1;
    	function d(c){
    		console.log(c);
    		return c = 2;		
    	}
    a = d(a);
    
    console.log(a);


    Ответ на вопрос: Потому что вы вызываете функцию с параметром, равным a. Это не влияет на значение самой переменной
    Ответ написан
    Комментировать
  • Замыкания в javascript, почему не работает?

    Xuxicheta
    @Xuxicheta
    инженер
    1. Замыкание тут не причем.
    2. Ты передаешь примитив. Он передается по значению. Если передать объект, он передастся по ссылке и изменится
    y={n:2};
    (function(o) {o.n=5}) (y);
    console.log(y); // y == { n:5}
    Ответ написан
    Комментировать
  • Чем является событие в объекте javaScript?

    Литература описывает то, что доступно к использованию разработчикам сайтов. Такие вещи как DOM являются частью браузера и написаны с использованием низкоуровневого кода и внутренних возможностей, которые не предоставляют разработчикам по различным причинам. Вполне вероятно, что событийная модель у DOM-элементов тоже написана с использованием внутренних средств. Хотя реализовать этот паттерн на чистом JavaScript'е не представляет из себя ничего сложного:

    class Element {
        constructor() {
            this._events = {};
        }
    
        addEventListener(event, listener) {
            let listeners = this._events[event];
    
            if (!listeners) {
                listeners = this._events[event] = [];
            }
    
            listeners.push(listener);
        }
    
        removeEventListener(event, listener) {
            const listeners = this._events[event];
    
            if (listeners) {
                const index = listeners.indexOf(listener);
    
                if (index !== -1) {
                    listeners.splice(index, 1);
                }
            }
        }
    
        dispatchEvent(event) {
            const listeners = this._events[event];
    
            if (listeners) {
                for (let listener of listeners) {
                    listener(event);
                }
            }
        }
    }

    С помощью Map можно и вовсе избавиться от псевдоприватного свойства _events и хранить его ассоциативно.
    Ответ написан
    Комментировать