Ruby в веб-браузере - PullRequest
       13

Ruby в веб-браузере

0 голосов
/ 19 января 2012

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

Есть ли готовые решения?

UPD:

  1. как насчет подсветки кода?
  2. как насчет Native Client?

Ответы [ 3 ]

1 голос
/ 19 января 2012

eval - это то, что вы ищете.Пользователь вводит Ruby-код, который размещается в вашем приложении rails.Внутри вашего контроллера вам нужно будет проверить представленный код Ruby.

Но.Вы, вероятно, не хотите этого.Если действительно требуется оценить и запустить код, представленный пользователем, вам, скорее всего, придется переосмыслить потребность в этой функции.Это почти невозможно сделать безопасным.И даже если вы защищаете его от определенных пользователей, его можно использовать через XSS;который фактически может захватить сервер в мгновение ока через эту «функцию».

1 голос
/ 19 января 2012

https://github.com/codegram/rack-webconsole

Или вы можете просто передать код Ruby на сервер по почте и позвонить eval eval(CODE).

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

Если это действительно нужно сделать, " Блокировка Ruby в сейфе " может помочь защитить его.

EDIT:

Для подсветки синтаксиса взгляните на Code Mirror и ACE . Оба являются приличными редакторами исходного кода с поддержкой ruby.

1 голос
/ 19 января 2012

На самом деле пока не существует реальных развертываемых решений для этого, но вы можете посмотреть text / x-ruby как подтверждение концепции.

Существует также Cloud9 IDE , которая функционирует как IDE на основе браузера и сохранит код на вашем сервере для запуска.

...