Безопасно ли извлекать содержимое каталога PHP и читать их с помощью JQuery?

Мой вопрос о безопасности PHP для этой конкретной операции:

Я хочу использовать JavaScript для извлечения всех файлов JSON из определенного каталога на моем веб-сервере. Я сделал так:
Я вытащил все правильные имена файлов с помощью этого сценария PHP («get-data.php»):

<?php
echo json_encode(glob('*.json'));
?>

Затем я перемещаю этот массив в JavaScript с

var oReq = new XMLHttpRequest();
oReq.onload = function() {
fileNames = JSON.parse(this.responseText);
};
oReq.open("get", "get-data.php", true);
oReq.send();

Затем я использую следующее для чтения файлов в массив:

function getMapInfo(fileName){
$.get(fileName, function(result) {
var map = JSON.parse(result);
mapData.push(map);
});
}

Я получил этот код здесь: Как передать переменные и данные из PHP в JavaScript?
и я немного прочитал на xss Вот а также Вот и я понимаю, что «недоверенные данные» — это данные, которые пользователь вводит, которые затем запускаются в сценарии? Я считаю, что мое решение не содержит небезопасных данных, так как оно извлекает только файлы, которые уже находятся на моем сервере, это правильно?

В целом мой вопрос: это безопасный способ, позволяющий моему коду получать несколько неизвестных файлов с моего сервера? В конце концов, я хочу использовать «сохранить» данные карты на сервере, которые затем будут прочитаны вышеуказанным сценарием, чтобы другие могли их увидеть.

Спасибо большое,

Иордания

3

Решение

Да, это совершенно безопасно. Вам просто нужно убедиться, что безопасность является частью php-кода, когда это необходимо, ограничивая или фильтруя то, что он может выбрать (там уже все хорошо), и как файлы .json проверяются и сохраняются, после того, как с этим обращаются, у вас все будет хорошо, и ваши Существующее решение совершенно безопасно. Вы также можете изменить файл .htaccess, чтобы скрыть содержимое папки, если вас беспокоит то, что другие пользователи просматривают каталоги на вашем сайте.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]