Tag: json

发布json来expression使用jQuery

从我的客户端发送JSON数据到运行express的节点服务器时遇到问题。 这里有一个简单的服务器来演示我的问题: var express = require('express'); var app = express(); app.configure(function(){ app.use(express.bodyParser()); app.use(app.router); app.use(express.logger()); }); app.listen(80); app.post('/', function(req,res){ console.log(req.body); console.log(req.body.number + 1); }); 该服务器只需将所有POST数据logging到控制台。 如果我然后粘贴到铬的开发控制台: $.post('/', {number:1}); 服务器打印出来: { number: '1' } 11 我怎样才能阻止我传递的数字被解释为一个string? 这与我正在使用的bodyParser中间件有关吗? 任何帮助赞赏!

我应该如何在http post请求的有效载荷中传递json数据

我想知道,如何在有效载荷中传递json请求,例如: {'name' : 'test', 'value' : 'test'} : var post_data = {}; var post_options = { host: this._host, path: path, method: 'POST', headers: { Cookie : "session=" + session, 'Content-Type': 'application/json', 'Content-Length': post_data.length, } }; // Set up the request var post_req = http.request(post_options, function(res) { res.setEncoding('utf8'); res.on('data', function (chunk) { console.log('========Response========: ' + chunk); […]

JSON + Node.js – 意外的令牌o

我刚刚开始在大学课程中使用node.js和json对象。 本周我们的任务之一是创build一些json对象,并将对象的一部分提取到html页面中。 我以为我对如何做到这一点有很好的把握,但是当我尝试启动节点时,我遇到了一个错误。 如果我删除了大学对象和parsing语句,那么节点运行良好。 这里是我运行“node index.js”时得到的错误: undefined:1 [object Object],[object Object],[object Object],[object Object],[object Object ^ SyntaxError: Unexpected token o at Object.parse (native) at Object.<anonymous> (/home/ubuntu/node_stuff/node_json/requestHandlers.js:13:20) at Module._compile (module.js:449:26) at Object.Module._extensions..js (module.js:467:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:362:17) at require (module.js:378:17) at Object.<anonymous> (/home/ubuntu/node_stuff/node_json/index.js:3:23) at Module._compile (module.js:449:26) 这是我正在使用的代码。 var querystring = require("querystring"), fs = […]

使用Express.js无法从请求中获取POST正文

我正在与NodeJS和Express(和更多的东西,如mongo,套接字等)的API工作,但我坚持一个非常简单的步骤,我相信,我只是想从POST req对象获取信息,但是当我尝试访问req.body时出现错误 这是我有: var express = require('express'), http = require('http'), path = require('path'), fs = require('fs'), io = require('socket.io'); dynroute = require('dynroute'); var app = express(); app.set('port', process.env.PORT || 3999); app.use(express.favicon()); app.use(express.logger('dev')); app.use(app.router); app.use(express.bodyParser()); app.post('/user', function(req, res) { console.log(JSON.stringify(req.body)); res.send(req.body.self); }); http.createServer(app).listen(app.get('port'), function () { console.log('App Server is now running at:' + app.get('port')); }); 在console.log(JSON.stringify(req.body)); […]

节点(Express)请求主体为空

我正在使用Node.JS和Restify今晚的简单的API,并通过req.params.fieldname接收参数方面的一切罚款。 我安装了CouchDB和Cradle,以便开始尝试将这些参数放到数据库中,但是在安装好所有东西后,req.params开始回到空的状态! 因为其他原因,我应该一直使用Express来开始,所以我尝试转换,看看我能否得到它的工作,但没有这样的运气。 var express = require('express'); var app = express.createServer(); app.configure(function(){ app.use(express.bodyParser()); app.use(express.cookieParser()); }); app.post('/', function(req, res){ res.send(req.body); }); app.listen(8080, function() { console.log('Printomatic listening at', app.url); }); 我已经尝试了无数的变化,但不pipe什么req.body回来空。 我正在使用http-consoletesting,并发送简单的POST /内容{"name":"foobar"} 我很沮丧,在这一点上,我开始怀疑当安装Cradle / CouchDB(分别安装了NPM和Homebrew)的时候是否有什么不妥。 任何帮助将不胜感激,因为这是有点时间敏感。 提前感谢您的帮助!

导入json文件时的Typescript编译器错误

所以代码很简单: calls.json {"SERVER":{ "requests":{ "one":"1" } } } file.ts import json = require('../static/calls.json'); console.log(json.SERVER); 生成的javascript是正确的,并且在运行节点js服务器时,控制台日志json.SERVER会打印“{requests:{one:'1'}}”。 打字稿编译器(commonjs)不过,不知何故并不特别喜欢这种情况,并抛出:“找不到模块”../static/calls.json'“。 当然,我试图写一个.d.ts文件,如下所示: declare module '../static/calls.json'{ var exp:any; export = exp; } 这显然会抛出:“环境模块声明不能指定相对模块名称”。 我也尝试了不同的变体,如: declare module 'calls.json' { import * as json from '/private/static/calls.json'; export = json; } 然后要求: import json = require('calls.json'); 没有正常工作,并有自己的小编译器错误:) 我想使用一个外部.json文件,因为我使用commonjs serverside和amd clientside,我想单个文件加载常量。

如何检查NodeJS中的JSON是否为空?

我有一个函数,检查请求是否有任何疑问,并做了不同的行动基于此。 目前,我有if(query)做这个别的东西。 但是,似乎没有查询数据时,我最终得到一个{} JSON对象。 因此,我需要replaceif(query) if(query.isEmpty())或类似的东西。 任何人都可以解释我怎么可以在NodeJS做这个? V8 JSON对象是否有这种function?

节点js错误:协议“https:”不支持。 预计“http:”

我正在使用IBM Bluemix为学校项目制作Web服务。 我的项目需要从API请求一个JSON,所以我可以使用它提供的数据。 我使用http get方法的数据集,我不知道它是否正常工作。 当我运行我的代码,我得到的消息: 错误:协议“https:”不受支持。 预计“http:” 是什么原因造成的,我该如何解决? 这是我的.js文件: // Hello. // // This is JSHint, a tool that helps to detect errors and potential // problems in your JavaScript code. // // To start, simply enter some JavaScript anywhere on this page. Your // report will appear on the right side. // // […]

使用Mongoose中的.populate()返回某些字段

运行我的查询后,我从MongoDB返回一个JSON值。 问题是我不想返回与我的返回相关的所有JSON,我试图search文档,并没有find一个正确的方法来做到这一点。 我在想,如果可能的话,如果是这样的话,是什么方法呢? 例如:在DB中 { user: "RMS", OS: "GNU/HURD", bearded: "yes", philosophy: { software: "FOSS", cryptology: "Necessary" }, email: { responds: "Yes", address: "rms@gnu.org" }, facebook: {} } { user: "zuckerburg", os: "OSX", bearded: "no", philosophy: { software: "OSS", cryptology: "Optional" }, email: {}, facebook: { responds: "Sometimes", address: "https://www.facebook.com/zuck?fref=ts" } } 如果它存在一个用户,但是如果它不返回另一个字段,返回一个字段的正确方法是什么。 对于上面的例子,我想返回RMS的[email][address]字段和Zuckerburg的[facebook][address]字段。 这是我试图find如果一个字段为空,但它似乎没有工作。 […]

如何在Express中强制parsing请求主体而不是json?

我正在使用nodejs + Express(v3)像这样: app.use(express.bodyParser()); app.route('/some/route', function(req, res) { var text = req.body; // I expect text to be a string but it is a JSON }); 我检查了请求标题和内容types丢失。 即使“内容types”是“文本/纯文本”它似乎parsing为JSON。 有反正告诉中间件总是parsing为纯文本string而不是json的身体? 早期版本的req曾经有req.rawBody ,可以解决这个问题,但现在已经req.rawBody了。 在Express中强制parsing主体为纯文本/string的最简单方法是什么?