Tag: 公司

使用诺言等待数据库操作

我有一个函数调用另一个函数,它连接到数据库来获得一些价值。 在执行完成之前,我不能继续进行,因为该值将用于数据库上的另一个事务。 我正在使用yield来确定该方法的完成,并promise解决或拒绝响应。 这是我如何做到的: co(function*() { rec.x = yield getX(a, b); //use rec to update something else conn.update(rec); }).catch((err) => { console.error(err.stack) }); function getX(a, b) { return conn.getVal(a, b); } exports.getVal = function(a, b) { return sql.connect(connStr).then(function() { return new sql.Request() .input('a', sql.VarChar(100), a) .input('b', sql.VarChar(50), b) .execute('someProc').then(function(recordSet) { return Promise.resolve(recordSet[0][0]); }); }); }; […]

为什么node.js生成器不能按预期工作?

给定以下两个代码片断,为什么事务对象在工作案例中可见,但在另一个案例中不可见? 工作案例: return db.transaction(function(transaction) { return co(function*() { // transaction is visible, do something with it -> works } } 不是工作案例: var c = co(function*() { // transaction is NOT visible -> does not work! }); return db.transaction(function(transaction) { return c; }); 是否有可能在第二种情况下使交易可见?

为node.js应用程序构builddocker镜像在代理之后失败

在docker构build过程中,我遇到了npm问题。 我背后的公司代理,并已阅读大约30篇文章(和stackoverflowpost)解决类似的问题。 但是,我仍然无法克服这一点。 我能够“npm安装”该项目,并获取所有必要的依赖关系以外的docker生成过程(但也使用代理),但不是在期间。 我到目前为止所尝试的: 直接使用代理(以及硬编码authentication数据),也通过CNTLM。 下面的描述是使用CNTLM的时候。 使用http repository,如下所示,使用strict_ssl false。 npm config set strict-ssl=false \ npm config set registry=http://registry.npmjs.org/ \ 通过代理设置–build-arg,env和通过运行参数 从一个干净的git checkout(没有node_modules)开始,并在运行npm install之后 我正在尝试build立: $ sudo docker build –build-arg HTTP_PROXY=http://127.0.0.1:3128 –build-arg HTTPS_PROXY=http://127.0.0.1:3128 . 输出 Sending build context to Docker daemon 226.6 MB Step 1 : FROM node:argon —> c74c117ed521 Step 2 : ENV http_proxy […]