Tag: edge.js

node.js为业务逻辑(edge.js)编写模块

我相当新的node.js,我不觉得在node.js写业务逻辑100%舒适。 我必须支持MSSQL作为Database-Backend,所以我来到了Edge.js。 后来我想也许这可能是一个很好的想法,我的DataLayer和BusinessLogic作为Edge.js模块。 有没有人有这种方法的经验? 有什么限制吗?

Visual Studio iOS部署失败,因为“边缘模块尚未预编译”

我正在尝试从Windows计算机部署HTML / CSS / JS Apache Cordova应用程序到Mac。 我相信他们正在通过remotebuild代理正常通信,但是当我尝试构build一个空白的项目在Mac上部署时,这个错误是在构build的最初阶段引发的: MDAVSCLI : error : The edge module has not been pre-compiled for node.js version v4.1.1. You must build a custom version of edge.node. Please refer to https://github.com/tjanczuk/edge for building instructions. 我已经按照链接,并已经find了解决办法,以解决这个错误,但这个链接似乎并不适用于我所做的。 我没有在我的代码中使用任何node.js函数,所以我很困惑,为什么这个错误发生。 我只是试图build立一个几乎空白的HTML页面,我仍然得到错误,无论我做这个页面有多简单。 我怎样才能解决这个问题? 什么是摆脱这个错误的最好方法,或者是因为错误提示预编译边缘与node.js版本4.1.1一起工作?

使用edge.js有可能使.Net C#模块调用进程的node.js部分,即做反向调用吗?

你可以在这里看到从Node.js – > C#的interop模型。 我想知道的是,C#代码可以在返回之前调用C#中的进程的Node.js部分中的方法吗? 想象一下,如果你有一个电话,像 var webApi = edge.func('/MyDotNetApi.csx'); webApi(function (error, result) { log.('api started'); }); MyDotNetApi.csx返回,但留下一个套接字侦听器线程运行来处理HTTP请求。 现在,如果进程的Node.js部分持有(不断变化).Net代码需要访问的信息以包含在其HTTP响应中,它是否可以以某种方式请求Node.js?

从C#.Net调用Node.JS

是否有可能在C#ASP.Net服务器上调用Node.js方法/模块? 我发现Edge.JS库,但据我了解,它允许调用Node.JS上的C#代码。 我需要直接相反的解决scheme。

GetObject与edge.js

我目前正在通过运行edge.js的基于node.js的REST-APIreplaceIE中的ActiveX实现 到目前为止,页面实现的基本示例工作得很好。 我有我的index.js设置为 var edge = require('edge'); var edgeVb = require('edge-vb'); var path = require('path'); var helloVb = edge.func('vb', path.join(__dirname, 'simpleVbFunction.vb')); helloVb('Testing with String', (err, res) => { if(err) throw err; console.log(res); }); 和simpleVbFunction.vb一样 Async Function(Input As Object) As Task(Of Object) Return Await Task.Run(Function() Return "NodeJS Welcomes: " & Input.ToString() End Function) End Function 到现在为止还挺好。 […]

当从C#调用Edge.js时,如何钩住stdout和stderr?

背景 我正在通过Process.Start()运行Node的C#程序。 我从这个subprocess捕获stdout和stderr,并根据我自己的原因redirect它。 我正在考虑用一个调用Edge.js代替Node.exe的调用。 为了能够做到这一点,我必须能够可靠地捕获在Edge中运行的Javascript的标准输出和标准错误,并将消息传回到我的C#应用​​程序中。 方法1 我会描述这种方法的完整性,以防有人推荐它:) 如果Edge进程终止,则只需简单地声明一个msgs数组,并用新的函数覆盖process.stdout.write和process.stderr.write来处理这个问题是相当容易的,这些函数会在该数组上累积消息,最后只需返回消息数组。 例: var msgs = []; process.stdout.write = function (string) { msgs.push({ stream: 'o', message : string }); }; process.stderr.write = function (string) { msgs.push({ stream: 'e', message: string }); }; // Return to caller. var result = { messages: msgs; …other stuff… }; callback(null, result); 显然这只有在Edge代码终止的情况下才有效,在最坏的情况下,消息可能会变大。 但是,它很可能会performance良好,因为只有一个编组调用才能获取所有消息。 […]

通过.NET SDK在node.js上进行指纹识别

我试图让一个node.js应用程序与一个名为U.are.U的.NET SDK指纹识别器进行交互。 SDK提供.dll(win32和x64),Java和.NET库。 我决定使用.NET的简单使用,使所有的接口可以使用和所有。 所以,我目前面临的问题是如何调用这些.NET函数,仍然保持node.js的asynchronous性质。 应用程序stream程(在.NET示例中)非常简单,库中有3个调用,指纹完成。 private IEnumerable<Fmd> CaptureAndExtractFmd() { while (!reset) { DataResult<Fmd> resultConversion; try { if (count >= 8) { SendMessage("Enrollment was unsuccessful. Please try again."); count = 0; break; } Fid fid = null; if (!_sender.CaptureFinger(ref fid)) break; if (fid == null) continue; count++; resultConversion = FeatureExtraction.CreateFmdFromFid(fid, Constants.Formats.Fmd.ANSI); SendMessage("A finger was captured. […]

如何强制保持一个Node.js进程终止?

TL; DR 什么是强制保持Node.js进程运行的最佳方式,即保持其事件循环不会空着,从而避免进程终止? 我能想出的最佳解决scheme是: setInterval(() => {}, Number.POSITIVE_INFINITY); 有没有更好的方法来做到这一点? 问题的长版本 我有一个Node.js脚本使用Edge.js来注册一个callback函数,以便它可以从.NET中的DLL中调用。 这个function将被称为每秒1次,发送一个简单的序列号,应该打印到控制台。 Edge.js部分很好,一切正常。 我唯一的问题是,我的Node.js进程执行它的脚本,之后,它用完事件处理。 在事件循环为空的情况下,它只是终止,忽略了它应该一直运行以便能够从DLL接收callback的事实。 我的Node.js脚本: var edge = require('edge'); var foo = edge.func({ assemblyFile: 'cs.dll', typeName: 'cs.MyClass', methodName: 'Foo' }); // The callback function that will be called from C# code: function callback(sequence) { console.info('Sequence:', sequence); } // Register for a callback: foo({ callback: […]