从node.js代码调用javascript代码

时间:2016-04-06 18:52:54

标签: javascript node.js

我想从node.js服务器内部的外部源运行一些javascript代码并返回结果。 在HTML代码中我只会使用

  

<script>http:\\address.of.code.com\code.js</script>

如何在node.js中运行此脚本获取此脚本的结果并将其返回给调用者?

我之前没有想要运行的脚本,它位于外部地址。

2 个答案:

答案 0 :(得分:1)

这个怎么样?

using (StreamReader sr = new StreamReader(fileName))
{
    using (CsvReader csvread = new CsvReader(sr))
    {
        csvread.Configuration.WillThrowOnMissingField = false;
        csvread.Configuration.HasHeaderRecord = true;
        CsvHelper.TypeConversion.TypeConverterOptionsFactory.AddOptions<DateTime>(options);

        List<Exam> Exams = csvread.GetRecords<Exam>().ToList();
        foreach (var rec in Exams) 
        {
          // Each record will be fetched and printed on the screen
          // checking values of rec here...
        }
    }
}

最好的问候,Nazar Medeiros

答案 1 :(得分:1)

我建议查看Node的本机vm模块。所以建立在纳扎尔的例子上:

var vm = require('vm');
var request = require('request');
request('http://address.of.code.com/code.js', function (error, response, body) {
    if (!error && response.statusCode == 200) {
           var script = vm.Script(body);
           var ctxt = {};
           script.runInNewContext(ctxt);
           console.log(ctxt);
    }
});

这会从其远程地址中提取脚本并运行它,而不会影响拉动脚本的代码。以下是vm的文档:https://nodejs.org/dist/latest-v4.x/docs/api/vm.html