私は Jint を使用していますが、C# の観点から、定義済みのすべての変数と関数をスクリプトのグローバル スコープで使用できるようにする方法があるかどうか疑問に思っています。
たとえば、ファイル「test.js」に次の Javascript コードがあるとします。
function globalFunc(a, b) {
var localVar = a + b;
return localVar;
}
var globalVar = 5;
...そして、次のC#コードが与えられます(Jint 2.4.0を使用):
Jint.Engine engine = new Jint.Engine();
engine.Execute(System.IO.File.ReadAllText("test.js");
// the following method call do not exist in Jint, just here for example...
JsValue[] variables = engine.GetGlobalScopeVariables();
次に、変数に 2 つの値、つまり「Function」型の「globalFunc」という名前の変数と「Number」型の「globalVar」という名前の変数が含まれることを期待します。
予想される答えは、Jint のハッキングにつながる可能性があります。私もそれに対してオープンです。
ありがとう!