Итак, сегодня у меня был очень хороший опыт работы со своими встроенными системами. Какой-то парень «взломал» все и сказал, что это проблема с ajax. Вот что он сказал мне:
вы полагаетесь на AJAX
когда у меня есть доступ к браузеру пользователя, у меня есть доступ ко всем функциям AJAX, которые вы написали для него, поэтому я могу делать все, что написано в вашем javascript, притворяясь этим пользователем
и это абсолютно хилларно - как кто-то мог получить доступ к пользовательским скриптам через ajax? Также я использую узел на сервере, но не могу понять, в чем проблема... пример ajax:
var transfer_data = {
id: jQuery(this).data('spin-id')
};
jQuery.ajax({
url: init_s.forms.provably.callback,
type: 'POST',
dataType: 'JSON',
data: transfer_data,
success: function (data) {
console.log(data);
if (data.type == 'failed') {
jQuery('#check_modal').modal('toggle');
} else {
// add data
}
}, error: function (e) {
console.log(e.message);
}
});
и пример запуска скрипта узла:
socket.on('new_spin_entry', function (data) { ... });
socket.emit('new_spin_entry', {
entry_id: data.user_spin_data.id
});
так что это за хрень? как это вообще возможно?
P.S. Я забыл упомянуть, что он вставил предупреждение в мой скрипт, который был загружен на странице. Не серверные скрипты, а скрипты, загруженные пользователю
PPS: это то, что я вижу в консольной системе банкомата, которая не работает: