Comments (7)
you can only write strings or buffers to binary streams like process.stdout
from jsonstream.
Sorry, I don't understand you.
If a change this line:
var stream=rq({url: "http://isaacs.couchone.com/registry/_all_docs"})
by this line (namely, replacing a stream filled from network by a stream filled from local filesystem):
var stream = fs.createReadStream("datos.json", {encoding: "utf8"})
piping to process.stdout works.
from jsonstream.
for reference, here's the code with syntax highlighting:
var js = require("JSONStream")
var rq = require("request")
var stream=rq({url: "http://isaacs.couchone.com/registry/_all_docs"})
var parser=js.parse("rows.*")
parser.on("data", function (dato) {
console.log("\n----------------")
console.log(dato)
})
stream.pipe(parser)
This code doesn't work:
var js = require("JSONStream")
var rq = require("request")
var stream=rq({url: "http://isaacs.couchone.com/registry/_all_docs"})
var parser=js.parse("rows.*")
parser.on("data", function (dato) {
console.log("\n----------------")
})
stream.pipe(parser).pipe(process.stdout)
from jsonstream.
In the first case, you're not piping anything to process.stdout
. It's legal to do console.log({some:'object'})
but not process.stdout.write({some:'object'})
, it has to be process.stdout.write("{some:'object'}")
.
from jsonstream.
Oooh, thanks!!! Now I understand!!
So I've include a JSON.stringify() before piping to process.stdout and now it works! Thanks!!
var js = require("JSONStream")
var rq = require("request")
var through = require("through")
var stream=rq({url: "http://isaacs.couchone.com/registry/_all_docs"})
var parser=js.parse("rows.*")
parser.on("data", function (dato) {
console.log("\n----------------")
})
var tr= through(function(dato) {
this.queue(JSON.stringify(dato))
})
stream.pipe(parser).pipe(tr).pipe(process.stdout)
from jsonstream.
exchange the through stream with js.stringify()
and you have one dependency less :)
from jsonstream.
Aaah, ok.
I was proving js.stringify() previously but I didn't understand what kind of data it returns. Afortunately, I've seen that putting a false value as parameter I can get what I want, so changing (as you say) last line with
stream.pipe(parser).pipe(js.stringify(false)).pipe(process.stdout)
it works too. Yes!
Thanks a lot!!!!
from jsonstream.
Related Issues (20)
- JSON syntax error is sometimes silently ignored
- Is there a way to stop the stream? HOT 2
- Performance much worse than a simple implementation HOT 1
- recurse/double dot .. operator doesn't work when the value to be retrieved is an Array or Object
- Why do you put mixpanel stuff in this repository? HOT 2
- JSONStream.parse() not working on large files HOT 1
- How to handle large JSON objects HOT 5
- Memory leak regression in 1.3.3 HOT 3
- Trouble with stringify...
- throw er; // Unhandled stream error in pipe. HOT 1
- Is it possible to use JSONStream to read the request of a POST method in a REST API? HOT 1
- recursive pattern example giving undefined error - line 71 on index.js HOT 1
- Support for top-level/nested `emitKey`/`$`
- Streaming only an object's keys
- Fix example url
- Get the n th item in array HOT 2
- JSONStream.stringify doesn't work on a huge JSON object
- Utilize Node Streams 3 API to add support for stream Async Iterator
- FYI: "event-stream" dependency is backdoored, apparently starting from v3.3.5 HOT 1
- [Feature Request] Conditional operators
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jsonstream.