Tag: xml

是否有可能从DOM获取所有处理指令元素

我有一个包含<?myinst contents ?>forms的处理指令的XML文件。 如果可能的话,我需要在一个集合中使用单个DOM查询来获取它们。 这可能没有迭代所有的树?

Node.JS奇怪行为接收发布数据

我正在发送XML请求数据到我的node.js服务器。 服务器被设置为接受post,并且已经通过CURL运行testing而没有问题。 现在我试图通过来自多个REST客户端的POST请求,并通过Chrome浏览器中的一个名为Postman的插件获取相同的数据。 最终目标是在EXE文件启动时接收数据到服务器。 我遇到的问题是,XML数据似乎进来,停在1439个字符(总字符接近3900)。 然后它会收到完整的3900个字符。 问题是XMLparsing器将这看作是一个糟糕的XML文档,因为前1439个字符正在消除语法。 我继续testing,但不明白为什么发送了1439个字符,然后跟随了3900个字符。 此外,这似乎并不总是发生。 我已经从这些来源连续多次testing,这种行为似乎只是随机发生。 我正在使用的完整代码如下所示。 http.createServer(function (req, res) { if(req.method=='POST'){ var body=''; req.on('data', function (data) { body +=data; body = body.toString(); var xmlDoc = libxmljs.parseXml(body)); var status = xmlDoc.get('//Status').text(); var ticket = xmlDoc.get('//Incident_ID').text(); console.log(status + " " + ticket); }); req.on('end', function(){ }); } else if(req.method=='GET'){ var url_parts = […]

htmlparser2将xml对象转换为string

我有点麻烦得到htmlparser2模块(使用node.js)输出一个XMLstring。 基本上我是这样parsing它: var htmlparser=require('htmlparser2'); function(xmlString,cb){ var handler=new htmlparser.DomHandler(cb); var parser = new htmlparser.Parser(handler); parser.write(xmlString); parser.done(); } 然后我得到一个名为“dom”的对象,我正在做一些工作。 完成这个工作之后,我想把它导回到一个XMLstring中。 我知道htmlparser.DomUtils.getOuterHTML(dom)适用于HTML对象,但不适用于XML(至less不是默认情况下)。 当我在xml dom上调用htmlparser.DomUtils.getOuterHTML(dom)时,我得到<undefined></undefined> 。 预先感谢您提供的任何帮助! -Dylan

MongoError:当存储由xml2js模块生成的JSON对象时,key $不能以'$'开头

大家, MongoDB db.version() is 3.0.5 mongodb package.json shows 2.0.42 version xml2js package.json shows 0.4.9 version 我已经search了这个错误,并通读了所有现存的问题,而且没有一个符合我的情况(无论是jira问题还是gogle团队讨论等)。 这可能与mongodb本地驱动程序(或MongoDB服务器版本),xml2js或其他。 我做了大量的testing,并find了解决问题的方法,但是,我很想知道问题是什么。 我有一个应用程序,执行以下操作: 将XForm(survey.xml)上传到ExpressJS 使用xml2js库将XML转换为JSON对象(示例如下所示) 迭代2中创build的JSON对象,并删除不必要的字段(代码段代码如下所示) 使用mongodb本地驱动将3中修改的JSON对象推送到MongoDB 第4步失败,出现错误(在问题的标题中显示)。 有2个JSON对象,其中一个是调查表单,包含$ keys,但在将文档插入到mongodb之前,使用以下代码删除$键 (function traverse(o) { for (var i in o) { if (o[i] !== null && typeof(o[i])=="object") { //going on step down in the object tree!! if(o[i].$) { var ref = […]

节点SOAP WSDL请求不完整(只有一些块)

我无法使用node-soap npm模块访问SOAP Web服务。 这就是我想要的: var url = 'https://ws-uat.ewinerysolutions.com/2.00/EWSWebServices.asmx?wsdl'; soap.createClient(url, function(err, client) { if(err) { console.log(err); } console.log(client.describe()); } 这不会出错,但会logging一个空的对象。 检查client显示返回的XML被截断,这反过来使node-soap模块不能构build适当的客户端。 XML的确切长度在16348字节的数量上波动。 如果我移动WSDL以引用本地文件,则client.describe()将按预期执行,并且对Web服务的调用也可用。 然而,对这种请求的更长的回应也会以类似的方式截断。 这导致我相信有一些东西在所有的数据块被接收之前closures了连接,所以我检出了请求 npm模块(也与节点打包在一起)。 为了解决这个问题,我试图只使用请求模块来检索WSDL : var request = require('request'); var body = ""; request.get('https://ws-uat.ewinerysolutions.com/2.00/EWSWebServices.asmx?wsdl') .on('data', function(data){ body += data; }).on('end', function() { console.log(body); }) 查看返回被截断的XML正文的实时版本 。 我已经有了这些工作之前,这些相同的库,只是为了确保我已经尝试运行相同的程序与一系列旧版本的依赖库。 我对这个东西也还是比较新的,所以任何帮助/指针都将不胜感激!

无法将YAML与评论合并

我正在做一个工具来自动化一些工作,我需要合并一些configurationYAML,但我需要注释,因为我需要描述未来的领域。 我已经设法做到这一点没有评论,将YAML转换为JSON,再次合并和转换为YAML。 我愿意使用XML或其他的东西,因为我可以在本地运行它。 任何人都知道任何可以帮助我? 喜欢这个: 文件1 project: general: environment: ? databases: # Main Database db1: host: localhost username: root password: root123 dbname: project logFile: ? 文件2: project: general: environment: local databases: db1: # New Log File logFile: project.log 会导致这样的结果: project: general: environment: local databases: # Main Database db1: host: localhost username: root password: root123 dbname: […]

node.js由C libxml&libxslt提供支持

不幸的是,我既不能编写C代码,也不能实现像PHP使用的通用libxml和libxslt这样的可用(并经过validation的)库。 我想知道在node.js中实现它们是否真的很难吗? 据我所知,C库可以(很容易)在node.js中使用。 我期待在服务器的JS上看到这样的http://www.w3schools.com/xsl/xsl_client.asp 。 我很想贡献和迁移/实施这两个库到节点。 有谁知道如何做到这一点或有解释这个快速链接? 请记住,我从来没有使用过C,但是我现在是一个PHP,Java和JS开发人员。 也许有人想join我并意识到这一点。

NodeJs CMS – 构buildCMS时作为存储格式的XML或JSON

我正在使用Express在NodeJs的顶部写JavaScript的CMS。 我的目标是build立一些我在.NET平台上每天构build的东西,但是现在纯粹用JavaScript。 目前,我有基本的stream程工作,内联编辑页面(“contenteditable”属性),然后parsing这些可编辑div div的HTML到JSON并将其存储在MongoDB中。 另一种方式是,将所需部分的JSONparsing回HTML服务器端,并使用jQuery将其插入到JSDom文档中,然后将整个文档发送到客户端。 这一切都完美的工作,但现在我正在与一个正在质疑HTML存储为JSON的部分的同事讨论。 在他看来,这应该是XML,但在将所有内容都改为XML之前,我想听到更多关于这个问题的意见。 在stream程的任何部分,XML都比JSON有优势吗? 我不得不使用XSLT将XML格式化为HTML,而不是像我所知的那样将JSONparsing回HTML。 任何意见,将不胜感激。

ENAMETOOLONG请求xml文件

我正在尝试通过node的请求模块获取我的RSS数据源(xml文件),如下所示: var fs = require('fs') , request = require('request') , feed = 'http://www.benchmark.pl/rss/aktualnosci-pliki.xml'; request.get(feed, function(error, response, body) { if (!error && response.statusCode == 200) { var csv = body; fs.createReadStream(body) .on('error', function (error) { console.error(error); }); } }); 但我得到的错误: { [Error: ENAMETOOLONG, open '<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <channel> <title> …. </rss> 在这种情况下我该怎么办?

如何使用nodejs将可读stream转换为有效的JSON?

我正在尝试使用音乐会数据的ATOM提要,并将其输出到JSON以获得更好的消费。 到目前为止,我一直在使用请求来获取数据和feedparser来parsing它,它似乎正在工作,因为我想。 // data var feed = 'http://mix.chimpfeedr.com/630a0-dcshows'; var wstream = fs.createWriteStream('data.json'); var req = request(feed); var feedparser = new FeedParser({ addmeta: false }); req.on('response', function(res) { var stream = this; if (res.statusCode != 200) return this.emit('error', new Error('Bad status code')); stream.pipe(feedparser) }); feedparser.on('readable', function() { var stream = this; var item; // … do […]