запустить код C # на стороне клиента в веб-приложении - PullRequest
0 голосов
/ 07 января 2010

У меня есть код на моем сервере, который работает очень хорошо. Он должен сканировать несколько страниц на удаленных сайтах для правильной работы. Я знаю, что некоторые пользователи могут захотеть злоупотребить моим сайтом, поэтому вместо запуска кода, использующего webclient и HttpRequest, я бы хотел, чтобы он выполнялся на стороне клиента, поэтому в случае злоупотребления пользователь может поместить свой черный список IP вместо моего сервера. Как я могу запустить этот код на стороне клиента? Я думаю, что Silverlight может быть решением, но я ничего не знаю об этом.

Ответы [ 3 ]

2 голосов
/ 07 января 2010

Да, Silverlight - это решение, которое позволяет запускать ограниченный набор кода .NET на компьютере клиента. Просто Google для Silverlight ограничения , чтобы получить больше информации о том, что не доступно.

Я не знаю, какой сценарий вы пытаетесь реализовать, и нужны ли вам результаты в реальном времени, но я думаю, что кэширование результатов сканирования может быть хорошей идеей?

В случае, если вы после просмотра веб-страниц , вы сможете найти пару JavaScript-фреймворков, подходящих именно вам.

0 голосов
/ 07 января 2010

Это интересный запрос (без каламбура). Если вы используете Silverlight, то, возможно, вместо того, чтобы портировать свою логику на него, создайте в нем простой класс Proxy, который получает запросы от вашего серверного приложения и переносит его вперед для грязной работы. То же самое с входящими ответами: ваш прокси-сервер Silverlight отправит его обратно на серверное приложение.

Таким образом, у вас есть возможность запустить серверное приложение через прокси-сервер Silverlight в некоторых случаях и самостоятельно (без прокси-сервера) в других сценариях. Плагин silverlight должен обеспечивать согласованный API для программирования независимо от того, в каком браузере он работает.

Если вы используете прокси-решение в веб-браузере, вы можете вообще пропустить Silverlight и использовать вызовы JavaScript / AJAX. Конечно, такого рода вещи обычно чреваты проблемами совместимости с браузерами, и это наверняка было бы неясной реализацией push / pull, но я думаю, что JavaScript может получить доступ к доменам и URL-адресам и (в некоторых случаях использования) не ограничивается одним из них. возник из.

Если безопасность Silverlight стоит так, как вы можете посмотреть на другие виды программируемых (готовых к использованию) плагинов для браузера, таких как Java, Flash и т. Д. Если память работает правильно, для плагина Java он может обмениваться данными только через сеть с Домен, с которого он возник. Этот вид безопасности слишком ограничивает ваши потребности при сканировании.

0 голосов
/ 07 января 2010

Я думаю, что вы можете выбрать Silverlight или что-то вроде настольного приложения

Если, возможно, не существует библиотеки jquery или другого языка сценариев клиента, который может делать то же самое

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