Articles of string

通过不同的可读stream对相同的可写stream进行两次pipe道操作

我试图连接一个string和一个可读stream(可读stream指向一个文件,可能有多个数据块,即文件可能很大)到一个可写入的stream,以便可写入的stream可以最终写入到一个目的地。 我正在encryption文件的string和内容,然后对它们应用zlib压缩,最后我想pipe他们到可写入的stream。 要做到这一点,我可以: a)将文件内容转换为一个string,然后连接string然后encryption,进行压缩,然后将其pipe道化为可写入的stream。 但这是不可能的,因为文件的大小可能很大,因此我不能将其内容转换为string。 b)我可以先encryption和压缩string,然后将string转换成stream,然后将其完全传输到可写入stream中,然后将文件内容传送到相同的可写入stream中。 为此,我写了这个: var crypto = require('crypto'), algorithm = 'aes-256-ctr', password = 'd6FAjkdlfAjk'; var stream = require('stream'); var fs = require('fs'); var zlib = require('zlib'); // input file var r = fs.createReadStream('file.txt'); // zip content var zip = zlib.createGzip(); // encrypt content var encrypt = crypto.createCipheriv(algorithm, password, iv); var w = […]

NPM(querystring或qs或查询string)模块哪个可以select?

我一直无法find答案。 所有这三个模块都非常受欢迎。 这三个都支持我的用例。 不过,我真的很好奇他们每个人之间有什么不同。 有post可以帮助解释body-parser-extended选项(qs vs querystring) 什么qs和querystring之间的区别但它仍然缺less第三个比较(查询string)

没有可变插值的模板string

是否有可能在JavaScript中有一个模板string不插入variables值? 我想有这样的实际JS代码块(这将是多行和包含转义序列): … return String.raw`console.log(\`Here is my code:\n\n ${code}\`);` 我可以在我的Node.js应用程序之间的函数之间传递。 我没有任何问题逃避反引号,但我想知道是否有一个简单的方法来停止variables的插值,以便我可以有嵌套在我的模板string内的模板string。 我知道一个select是将代码定义为let code = '${code}'; 但我想知道是否有一个更干净的方式来做插入完全closures的方式与String.rawclosures转义序列的解释。

Node.js beginner-请求没有查询string

我是node.js的新手 我正在处理的一个项目需要将大数组(625项)作为string存储在MySQL数据库中,而我正在使用Node MySQL来完成这个任务。 现在我有了它,这样,当“/(列名)?(值)”请求被更新时,行就被更新了。 不幸的是,学习将625个项目作为string传递给节点并不是最有效的方法。 除了查询string之外,对于将大数组作为string传递的替代方法,您有任何build议吗? var http = require('http'), mysql = require("mysql"), url = require("url"), express = require("express"); var connection = mysql.createConnection({ user: "root", database: "ballot" }); var app = express(); app.use(express.bodyParser()); app.options('/', function (request, response) { response.header("Access-Control-Allow-Origin", "*"); response.end(); }); app.get('/', function (request, response) { connection.query("SELECT * FROM pathfind;", function (error, rows, fields) […]

如何处理包含非utf8字符的GET参数?

在一个基于nodejs / express的应用程序中,我需要处理可能包含使用iso-8859-1字符集编码的变音符号的GET请求。 不幸的是,它的查询stringparsing器似乎只处理纯ASCII和UTF8: > qs.parse('foo=bar&xyz=foo%20bar') { foo: 'bar', xyz: 'foo bar' } # works fine > qs.parse('foo=bar&xyz=T%FCt%20T%FCt') { foo: 'bar', xyz: 'T%FCt%20T%FCt' } # iso-8859-1 breaks, should be "Tüt Tüt" > qs.parse('foo=bar&xyz=m%C3%B6p') { foo: 'bar', xyz: 'möp' } # utf8 works fine 有没有隐藏的选项或其他干净的方式来使这个工作与其他的字符集呢? 默认行为的主要问题是,我无法知道是否存在解码错误 – 毕竟,input可能是简单解码的东西,看起来像一个urlencodedstring。

Node.js不能解码string..字符乱码(问号)

我真的希望这只是工作,但… 我得到一个base64string的头…我想编码为UTF8。 strInit = req.headers['authorization'] buf = new Buffer(strInit.length) i = 0 while i < strInit.length buf[i] = strInit.charCodeAt(i) i++ str = buf.toString() str2 = new Buffer(str, 'base64').toString() console.log("AUTH REQUEST :",strInit, buf, str, str2) AUTH REQUEST : Basic dXNlckBnbWFpbC5jb206cXdlcnR5 <Buffer 42 61 73 69 63 20 64 58 4e 6c 63 6b 42 6e 62 […]

在MySQL数据库中存储0和1的系列

我正在使用MySql和Nodejs。 我需要存储一个只有0和1的巨大的string。 (这是一个地图网格,0 =可以移动,1 =不能移动。) 例如:0000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 … 我应该把这个string,编码成一个base64string,并以这种方式存储? 那么当我需要的时候,我解码它? 如果是这样,我将如何使用Nodejs / Javascript? 谢谢

与-1或undefined比较,不pipe用==还是===

这里是一个代码示例: do { line=gets(smil); if (line===-1){console.log("Abort");callback(-1);} console.log("line= "+line); }while(line.search("<video")===-1); 第一个输出顺利,但突然间,我得到了 line= -1 TypeError: Object -1 has no method 'search' gets是一个自定义函数,在错误的情况下返回一个string或-1。 我试着==而不是===,但它只是做同样的。 我试图通过undefinedreplace获取返回-1,但我只是得到 line= undefined TypeError: Cannot call method 'search' of undefined 代替。 为什么不执行? 编辑:试过 var pline do { pline=gets(smil); if (pline===-1){console.log("Abort");callback(-1);} console.log("line= "+pline); }while(pline.search("<video")===-1); 避免重写另一个variables,得到相同的结果

使用节点JS的string操作

我在节点JS新手。 我怎么操纵这个句子“皇家墨尔本理工学院的build筑”呢,我只想把逗号前面的字(在这种情况下是架构 )? 所以如果我find逗号,我会把所有的单词放在第一个逗号前。

在JavaScript中注册string的string

我正在寻找在JavaScript中创build一个常规的exp来寻找像${………….} 。 可以说如果有string像 { "type" : "id", "id" : ${idOf('/tar/check/inof/high1')}, "details" : [ { "name" : "Sanio", "sig" : "DA123QW" }, { "name" : "Tarer", "sig" : "BAWE3QW" }, { "name" : "Kadek", "sig" : "KSWE2J" }, ] }, 所以我正在寻找所有$ {whateverhere} 我正在尝试 var pathRegExp = /\$(.*)\}/; 但它不是以“}”符号结尾。