Как сделать код js невидимым? - PullRequest
1 голос
/ 18 февраля 2010

У меня есть страница php, где внизу страницы у меня есть некоторый код JavaScript.

Я использую php внутри кода javascript, например:

alert ("<?php echo $variable; ?>");

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

Или есть еще один способ, которым я пока не знаю, сделать код JavaScript невидимым для пользователей? (например, чтобы они не могли видеть код, просматривая исходный код)

Спасибо

Ответы [ 6 ]

10 голосов
/ 18 февраля 2010

Javascript интерпретируется браузером, поэтому браузер должен видеть код. Это означает, что он также доступен пользователю. Нельзя скрыть JavaScript от пользователя . Что вы можете сделать, это запутать его, чтобы затруднить пользователю чтение кода.

2 голосов
/ 18 февраля 2010

Что не сработало, когда вы поместили этот код в отдельный файл и какой тип файла вы использовали?Если вы использовали PHP-файл и включили его, он должен работать, если вы использовали JS-файл, он не может работать, поскольку JavaScript-файлы не интерпретируют PHP (который находится на стороне сервера).

Помимо «обфускации» JavaScript правильным решением (некоторые из них есть, Google знает больше :), я не знаю ни одного способа «скрыть» код, поскольку JavaScript - это код, который будет выполняться на стороне клиента.таким образом, клиент (браузер) должен получить этот код заранее.

0 голосов
/ 18 февраля 2010

Не эксперт по PHP, так что извините за мое потенциальное невежество, но PHP-код на стороне сервера, верно?Они увидят только клиентское представление этого ответа.Вы не можете скрыть это от пользователя, и вы не можете поместить PHP-код в файл JS, если это то, что вы имели в виду под другим файлом.

Единственный другой вариант - сжать или использовать другой инструмент для изменения JS, как упоминалосьранее.

HTH.

0 голосов
/ 18 февраля 2010

AFAIK, если вы хотите, чтобы браузер выполнял ваш javascript, браузер (и пользователи) должны иметь возможность его читать.
Однако вы можете зашифровать код с помощью некоторых инструментов, таких как http://tero.co.uk/scripts/scrambler.php

Привет
Thomas

0 голосов
/ 18 февраля 2010

Вы не можете сделать javascript невидимым для пользователя, но вы можете использовать кодировщик / упаковщик javascript, чтобы сделать ваш код очень сложным для копирования / понимания другими.

Посмотрите:

Пример скрипта Google с сокращенными переменными и именами функций: http://www.google.com/ig/extern_js/f/CgJlbhICdXMrMO0BOAQsKzDyATgRLA/eklYcEESpHY.js

Как видите - очень трудно понять, о чем идет речь ... С другой стороны - если кто-то действительно действительно хотел, он мог бы расшифровать это ..

0 голосов
/ 18 февраля 2010

В настоящее время, с Firefox Firebug и Chrome (среди прочего), вы можете видеть все JS: нет смысла пытаться «спрятать» его .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...