Я хочу оценить динамический код JavaScript внутри среды выполнения Google App Engine.
Java имеет эту функцию, но хочу знать, поддерживается ли это также GAE.
Если вы можете предоставить простой код, вы будете очень благодарны, и если вы его используете, пожалуйста, поделитесь с ним комментариями, спасибо.
...
Поддержка GAE Языки скриптов, но по умолчанию служба "JavaScript" не регистрируется. Поэтому GAE из коробки не оценивает JavaScript.
В прошлый раз, когда я попытался, хотя ScriptEngine включен в белый список, он недоступен в рабочей среде. Мне пришлось упаковать Rhino.jar вместе с моим приложением.
В примерах общего использования скриптов в Java вы можете напрямую ссылаться на документацию по Java.
Хотя, обратите внимание, что в среде GAE/J вам нужно будет напрямую обращаться к API-интерфейсам Rhino.
Например,
// Import statements.
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
private Object executeUsingRhino(String script) throws Exception
{
Context ctx = Context.enter();
try
{
Scriptable scope = ctx.initStandardObjects();
return ctx.evaluateString(scope, script, "<cmd>", 1, null);
}
finally
{
Context.exit();
}
}
// Invoke a script that returns a string output using the following code snippet
String output = Context.toString(executeUsingRhino(script));
https://developers.google.com/appengine/docs/java/jrewhitelist включает javax.script.ScriptEngine в своих белых (разрешенных) API, поэтому да.