#ajax #jquery #coldfusion #coldfusion-8 #view-source
#ajax #jquery #coldfusion #coldfusion-8 #просмотр исходного кода
Вопрос:
Мне любопытно… Мне нравятся асинхронные вызовы с помощью jQuery, но я не хочу, чтобы мои компоненты были доступны для общественности с помощью источника просмотра…
Какое рекомендуемое решение для этого?
Комментарии:
1. невозможно. Javascript доступен из view source по своей природе. Однако вы можете использовать сеанс для управления доступом к своим вызовам API.
2. Вы можете установить verifyClient = true, если хотите, чтобы ваш CFC был доступен только вашим компонентам CFAJAX.
3. Просто для ясности: вы говорите об URL-адресах ваших компонентов? Которые вы не можете скрыть без использования компонента facade / proxy. Если в вашей конфигурации нет чего-то еще неправильного, никто не сможет просмотреть исходный код ваших компонентов.
Ответ №1:
Вы могли бы сделать фасад доступным в веб-корне, который просто передает все входные данные в CFC за пределами веб-корня и возвращает результаты.
Таким образом, все, что видно при прямом вызове cfc в webroot, — это имена функций и переменных, а вся бизнес-логика скрыта из виду.
Комментарии:
1. Еще одна приятная особенность этого подхода заключается в том, что только фасадный CFC должен иметь «удаленные» методы. Все ваши CFC реальной реализации могут объявлять свои методы как «общедоступные», поскольку они вызываются из CFC фасада.
2. Я думаю, что это имеет наибольший смысл … компоненты, которые вызывают компоненты.
Ответ №2:
Вы могли бы использовать фреймворк на основе URI маршрута, такой как Taffy[1]. Taffy использует архитектуру RESTful, позволяющую определять URI, используемые для вызова ваших компонентов. Клиент никогда не видит вашу фактическую структуру папок CFC или имена файлов.