Tag: json

Node.js JSON.parse创build对象与getter属性

这在很大程度上是一个“我做得对吗/我怎么能做得更好”这样一个话题,最后还有一些具体的问题。 如果您对以下文本有其他build议/评论,即使我没有专门提出这些问题,也可以随时发表评论。 我有一个MySQL表,我的应用程序的用户,以及一组固定列,也有一个文本列包含一个JSONconfiguration对象。 这是为了存储不能存储在单独列中的variablesconfiguration数据,因为它具有不同的每个用户的属性。 在configuration数据上不需要查找/sorting/任何东西,所以我们决定这是最好的方法。 当从我的Node.JS应用程序(运行在节点0.12.4)上查询数据库时,我将JSON文本分配给一个对象,然后使用Object.defineProperty创build一个getter属性,在需要时分析JSONstring数据并添加它的对象。 代码如下所示: user = uid: results[0].uid _c: results[0].user_config # JSON config data as string Object.defineProperty user, 'config', get: -> @c = JSON.parse @_c if not @c? return @c 编辑:上面的代码是Coffeescript,这是(不相上下)对于那些不使用Coffeescript的(近似)Javascript等价物: var user = { uid: results[0].uid, _c: results[0].user_config // JSON config data as string }; Object.defineProperty(user, 'config', { get: function() { […]

打印个别对象到DOM时,他们的ID不同

我正在开发一个JavaScript web应用程序,该应用程序从用户(音乐艺术家的姓名)获取input,并输出由Spotify API确定的相关艺术家及其最受欢迎歌曲的列表。 我最初有一个这个function的基本版本,但它只是发布所有相关艺术家的列表,列出所有相关艺术家最受欢迎的歌曲的列表,而且我希望整个对象能够打印出来(艺术家加上大多数stream行歌)。 我有一系列代表通过spotify-web-api-js节点模块接收到的艺术家的对象,Node.js和Browserify使其在浏览器中正常工作,并由Spotify ID唯一标识。 我怎么能循环他们,如果我不知道这些ID之前,用户进行search,以便我可以正确地将他们推到一个对象,然后我可以通过jQuery的appendinput到DOM? 我一直试图以各种方式访问​​它们,但似乎并没有工作: s.getArtistRelatedArtists(originalArtistId, function(err, data) { for (i = 0; i < data.artists.length; i++) { console.log(data.artists[i].name); relatedArtistsObject[data.artists[i].id] = { name: data.artists[i].name, songs: [] }; s.getArtistTopTracks(data.artists[i].id, "US", function (err, data2) { if (relatedArtistsObject[data2.tracks[0].artists[0].id] !== undefined) { // console.log(data2.tracks[0].name); — this outputs the song titles I want relatedArtistsObject[data2.tracks[0].artists[0].id].songs.push(data2.tracks[0].name); } }); } […]

将数据添加到现有的json对象

所以我想要实现的是创build一个json平面文件来存储用户信息,我坚持是我不知道如何添加新的嵌套对象是空的,然后保存JSON文件并重新加载它。 我在*json*文件中有这个。 { "users" : { "test" : { }, "test1" : { } } } 我试图添加尽可能多的新对象,因为我想要它。 所以例如。 { "users" : { "test" : { }, "test1" : { }, "test2" : { }, "test3" : { } } } 我的服务器端Javascript json.users.push = username; fs.writeFile("./storage.json", JSON.stringify(json, null, 4) , 'utf-8'); delete require.cache[require.resolve('./storage.json')]; json = require("./storage.json"); […]

张贴JSON数据来表示应用程序越来越{}

在下面的nodejs服务器中,我尝试获取发布的json数据。 但服务器没有得到我发送的JSON数据。 followng代码是nodejs应用程序 var express = require('express') var bodyParser = require('body-parser') var app = express() // parse application/json app.use(bodyParser.json()) app.use(function (req, res, next) { console.log(req.body) // populated! res.send(req.body); }); app.listen(3000); Iam发送来自follong页面的json数据: <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script> $(document).ready(function(){ $.ajax({ url: 'http://localhost:3000/', type: 'POST', contentType: 'application/json', data: JSON.stringify({number:1}), success: function (data) { console.log(data); } }); […]

不能这样做:NodeJS服务器创build号码,通过JSON发送给客户端

我的问题: 服务器生成一个随机数并通过JSON发送给客户端。 当我在不同的窗口上打开客户端,它显示相同的号码。 如果我点击一个刷新button,这个数字会在两个客户端上立即改变。 我是JavaScript,Node.js等等的新手,因为它是我在德国的第一个软件工程师学生,而且我只习惯Java(不是Javascript)和HTML。 //my server: var http = require('http'); var fs = require('fs'); http.createServer(function (req, res) { fs.readFile('index.html', 'utf-8', function (err, content) { if (err) { res.end('error occurred'); return; } res.writeHead(200, {'Content-Type': 'text/html'}); res.write(content); res.end(); }); }).listen(8124); var ranNum = '{"number": "' + parseInt(Math.random() * 100000000) + '"}'; console.log("server at http://localhost:8124/");

在node.js中引用带有forEach的JSON对象

在视图中,我想遍历list并呈现所有列表项的resolved_title 。 这是JSON对象。 { status: 1, complete: 1, list: { '56777886': { item_id: '56777886', resolved_id: '56777897', given_url: 'https://youtu.be/5XD2kNopsUs', given_title: '', favorite: '0', status: '0', time_added: '1444084808', time_updated: '1444392563', time_read: '0', time_favorited: '0', sort_id: 2, resolved_title: 'Jason Fried: Why work doesn\'t happen at work', resolved_url: 'https://www.youtube.com/watch?v=5XD2kNopsUs&feature=youtu.be', excerpt: 'http://www.ted.com Jason Fried has a radical theory of working: […]

将新数据推送到外部JSON文件

我想推入一个新的对象到一个外部的JavaScript文件,但我有问题拉JSON文件写入。 我有一个名为check.json的外部本地文件。 如何在节点中正确调用外部json文件? var newData = JSON.parse(check.json); newData.check.push({ cheap: $el.text() }); check.json = JSON.stringify(newData);

我怎样才能确定使用哪种编码JSON.stringify()?

我正在放置一个node / express应用程序,它将返回使用JSON.stringify()序列化的JSON。 我想设置Content-Type HTTP头来包含编码信息 – 比如application/json; charset=utf-16 application/json; charset=utf-16 。 我的理解是JSON.stringify()可能会产生UTF-16或UCS-2编码的结果。 我如何知道使用哪种编码来序列化JSON,以及告知用户代理正确编码的最佳方式是什么?

JSON Stringify函数返回相等但chai的相等函数返回不相等

在一个使用chai“应该”断言的testing套件中,以下返回false: some.json.blob.should.equal(some.other.json.blob); 但是,这返回true: JSON.stringify(some.json.blob).should.equal(JSON.stringify(some.other.json.blob)); 我知道stringify()函数并不是testingJSON等价性的最稳健的方法,所以我想find一种直接比较JSON的方法,而不需要经过stringify。 如何直接比较对象而不使用JSON.stringify()?

无法parsingpackage.json:npm install

当我发出“$ npm install”时,package.json不会被parsing。 我在ubuntu 14.04上使用NPM版本v2.11.2。 的package.json { "name": "sockjs-express", "version": "0.0.0-unreleasable", "dependencies": { "express": "~3*", "sockjs": "*", "hiredis": "*", "redis": "*" } } 以下错误报告: :~/sfax/djangotest/sockjs_serv$ sudo npm install npm ERR! install Couldn't read dependencies npm ERR! Linux 3.13.0-48-generic npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "–production" npm ERR! node v0.12.5 npm ERR! npm v2.11.2 npm ERR! […]