Определить расположение сервера в проекте html jquery

Я разрабатываю веб-систему с использованием html, jquery и node js server. В настоящее время я звоню ajax, как показано ниже.

          $.ajax({
                type: 'post',
                url: serverLocation + "/api/dashboard/createUser",
                dataType: 'json',
                data: JSON.stringify(reqJson),
                contentType: "application/json; charset=UTF-8",
                success: function (response) {
                    console.info(response);
                    showAlertBox(response.message, response.status);
                },
                error: function (textStatus, errorThrown) {
                    console.info('Err');
                    showAlertBox("Somthing went wrong", false);
                }
            });

вы можете видеть, что я использовал переменную serverLocation в атрибуте url. Честно говоря, я определяю serverLocation в приведенном выше файле js как константу, и я делал это во всех файлах js. (Я знаю, что это плохая практика программирования).

const serverLocation = "http://127.0.0.1:9173"; 

Итак, когда мы собираемся развернуть производственный сервер, как определить это расположение сервера в одном месте и использовать его во всех файлах js?

Другой вопрос: раскрытие такой информации о сервере на стороне клиента затронет безопасность. В таком случае как этого избежать?

назовем это относительно с url: '/api/dashboard/createUser'. Удалите serverLocation

vibhor1997a 01.04.2018 09:13

вы можете определить его в каком-то классе (класс consts) и импортировать этот класс в свой код или использовать строку uniq, которая будет заменена во время сборки задачей (gulp, bower и т. д.), поскольку для безопасности вы можете скрыть свое реальное местоположение сервера за CDN, но каждый URL-адрес www.something.com переведен на IP-адрес, и чтобы весь Интернет работал, он должен быть на виду

shahaf 01.04.2018 09:24
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
0
2
43
2

Ответы 2

Абсолютно не нужна переменная типа serverlocation, которая определяет доменное имя или что-то еще. Вам просто нужно указать URL-адрес как /api/dashboard/createUser, он будет динамически получать доменное имя или IP-адрес и будет искать маршрут /api/dashboard/createUser в соответствии с методом http. Если вы хотите перейти по ссылке, которая добавляется к текущему URL-адресу, Если ваш текущий URL-адрес http://www.example.com/present/abc И вы хотите, чтобы действие было в http://www.example.com/present/abc/actionpage Затем используйте <?php $_SERVER['PHP_SELF']?> в месте разделения Или, если вам снова нужно имя хоста, используйте $_SERVER['SERVER_NAME'] вместо сервера

Я использую 2 сервера для веб-проекта (Html ​​+ Jquery) и js-сервер узла.

weeraa 09.04.2018 20:10

$_ SERVER[] позаботится об этом

Aniketh Saha 10.04.2018 12:55

Я использую node js, и вы уверены, что я могу использовать приведенный выше код?

weeraa 10.04.2018 19:23

Это код php, используйте его в файле html с тегами php .... не используйте в файле js сервера node.js

Aniketh Saha 11.04.2018 18:42

Первый:

Если ваш клиентский (JS, HTML и CSS) код и код сервера находятся в одном домене, вам не нужно указывать точное местоположение сервера. Если это не так, вы должны указать полный путь к серверу для выполнения вызова ajax.

Второй: Даже если вам удастся скрыть ссылку на сервер, вы можете получить ссылки из инструментов разработчика браузера. Не беспокойтесь о URL-адресах, хранящихся в JS. Серверы предназначены для обеспечения безопасности.

да .. это мой вопрос. расположение в Интернете и расположение конечных точек сервера - это 2 сервера. В таком случае мы должны определить конечную точку, не так ли?

weeraa 09.04.2018 20:08

Другие вопросы по теме