Articles of post

如何在node.js中发送一个200响应

我有node.js 5.2.0,expression4.2.0和强大的1.0.17。 我创build了一个简单的表单来保存文本框和照片。 它工作正常,但问题是,在数据上传后,我可以看到在控制台,POST没有完成,它仍然待定。 为了完成它,我把这个添加到我的代码 form.on('end', function() { res.writeHead(200, {'Content-Type': 'text/plain'}); }); 我只想发送标题,并没有在页面上。 我希望系统得到200 ok回应,而不必在页面上打印任何东西。 但是POST还在等待。 如何解决这个问题,而不必打印任何东西? 什么样的标题我必须发送? 谢谢 UPDATE 如果我做 form.on('end', function() { res.end(); }); POST正常结束,但是我得到一个空白页。 这是为什么? 我只想上传一些东西,不打印页面上的任何东西,不redirect,留在同一页面。 再次感谢

jQuery Ajax发布请求与node.js和express

我正在尝试使用JQuery向Node.JS和Express中的Node.JS服务器发出AJAX请求,但它不起作用! var express = require('express') var app = express(); app.listen(8888); app.configure(function(){ app.use(express.bodyParser()); app.set('views',__dirname + '/views'); app.set('view engine', 'ejs'); app.use(express.static(__dirname + '/public')); app.use(express.cookieParser()); app.use(app.router); }); app.get('/', function (req, res){ res.render('ajax.ejs'); }); app.post('/ajax', express.bodyParser(), function (req, res){ console.log(req); console.log('req received'); res.redirect('/'); }); 这是ajax.ejs : <html> <head> <script src="http://code.jquery.com/jquery-1.6.2.min.js"></script> <script type="text/javascript"> $('#enter').click(function(){ $.ajax({ url: '/ajax', type: 'POST', cache: […]

XMLHttpRequest无法加载。 请求的资源上没有“Access-Control-Allow-Origin”标题。 因此,原产地不得进入

我使用Apache HTTPD服务器托pipe客户端文件 http://ipaddress:8010/ 和我的Nodejs服务器上运行http://ipaddress:8087 当我发送邮件请求,然后显示以下错误 XMLHttpRequest cannot load http://ipaddress:8010/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://ipaddress:8087' is therefore not allowed access. 我的客户端代码是: $.ajax({ type: "POST", url: "http://ipaddress:8010", data: {name:"xyz"}, success: function(){ alert("success"); }, dataType: "json" }); 我的服务器端是: response.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE'); response.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type'); response.setHeader('Access-Control-Allow-Credentials', true); 选项允许仍然是行不通的任何人都可以build议究竟是什么问题? 我在服务器端收到请求,但无法发送任何响应。 提前致谢 […]

POST数据中的node.js和utf-8

在使用Node.JS Web服务器时,我在解码POST数据中的UTF-8string时遇到问题。 看到这个完整的testing用例: require("http").createServer(function(request, response) { if (request.method != "POST") { response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'}); response.end('<html>'+ '<head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head>'+ '<body>'+ '<form method="post">'+ '<input name="test" value="Grüße!"><input type="submit">'+ '</form></body></html>'); } else { console.log("CONTENT TYPE=",request.headers['content-type']); var body=""; request.on('data', function (data) { body += data; }); request.on('end', function () { console.log("POST BODY=",body); response.writeHead(200, {'Content-Type': 'text/plain; charset=utf-8'}); response.end("POST DATA:\n"+body+"\n—\nUNESCAPED:\n"+unescape(body)+ […]

在NodeJS中发送POST请求时如何设置Content-Length?

var https = require('https'); var p = '/api/username/FA/AA?ZOHO_ACTION=EXPORT&ZOHO_OUTPUT_FORMAT=JSON&ZOHO_ERROR_FORMAT=JSON&ZOHO_API_KEY=dummy1234&ticket=dummy9876&ZOHO_API_VERSION=1.0'; var https = require('https'); var options = { host: 'reportsapi.zoho.com', port: 443, path: p, method: 'POST' }; var req = https.request(options, function(res) { console.log("statusCode: ", res.statusCode); console.log("headers: ", res.headers); res.on('data', function(d) { process.stdout.write(d); }); }); req.end(); req.on('error', function(e) { console.error(e); }); 当我运行上面的代码,我得到以下错误。 错误信息: statusCode: 411 headers: { […]

从Node.js POST到PHP

我正在尝试从Node.js应用程序发布一些数据到PHP脚本。 目前我只是build立一个概念certificate,但我无法把实际的数据转移到PHP端。 请求通过,我得到200回来,但PHP认为$ _POST数组是空的。 这是我的节点代码: // simple end point just for testing exports.testPost = function(request, response) { data = request.body.data; postToPHP(data); response.end(data); } function postToPHP (data) { var http = require('http'); var options = { host : 'localhost', port : 8050, path : '/machines/test/index.php', method : 'POST', headers : { 'Content-Type' : 'application/json', 'Content-Length' : […]

我一直收到我的reCAPTCHAvalidation请求上的“invalid-site-private-key”

也许你们可以帮助我。 我正在尝试在我的node.js应用程序中实现reCAPTCHA,无论我做什么,都会收到“invalid-site-private-key”作为响应。 这里是我加倍和检查和尝试的事情: 正确的钥匙 密钥不交换 键是“全局键”,因为我在本地主机上testing,认为这可能是一个问题 在服务器上的生产环境中testing – 同样的问题 我能想到的最后一件事是我的POST请求reCAPTCHA API本身是不正确的,因为具体格式的身体没有明确logging(参数logging,我知道)。 所以这是我目前正在发送的请求主体(密钥和IP被更改,但是我检查了他们): privatekey=6LcHN8gSAABAAEt_gKsSwfuSfsam9ebhPJa8w_EV&remoteip=10.92.165.132& challenge=03AHJ_Vuu85MroKzagMlXq_trMemw4hKSP648MOf1JCua9W-5R968i2pPjE0jjDGX TYmWNjaqUXTGJOyMO3IKKOGtkeg_Xnn2UVAfoXHVQ-0VCHYPNwrj3PQgGj22EFv7RGSsuNfJCyn mwTO8TnwZZMRjHFrsglar2zQ&response=Coleshill areacce 这种格式有什么问题吗? 我必须发送特殊的标题吗? 我完全错了吗? (我现在正在连续工作16个小时,所以这可能是..) 感谢您的帮助!

如何在node.js http.request中发布XML数据

我想通过使用http.request Node.js提交一个XML请求到一个Web服务。 这是我的代码。 我的问题是,而不是data=1我想发布到服务的XML。 http.request({ host: 'service.x.yyy.x', port: 80, path: "/a.asmx?data=1", method: 'POST' }, function(resp) { console.log(resp.statusCode); if(resp.statusCode) { resp.on('data', function (chunk) { console.log(chunk); str += chunk; }); resp.on('end', function (chunk) { console.log(str); }); } }).end(); 何要这样做?

使用Android发送HTTP发布请求

我一直在尝试从SO和其他站点上的大量示例中学习,但我无法弄清楚为什么我一起入侵的例子不起作用。 我正在构build一个小型概念validation应用程序来识别语音,并将其作为POST请求发送到node.js服务器。 我已经确认的语音识别工作,并且服务器正在接收来自常规浏览器访问的连接,所以我导致相信这个问题是在应用程序本身。 我是否缺less一些小而愚蠢的东西? 没有错误被抛出,但服务器永远不会识别连接。 提前感谢您的任何build议或帮助。 相关的Java(主要活动和必要的AsyncTask): protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == 1001) { if (resultCode == RESULT_OK) { ArrayList<String> textMatchList = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); if (!textMatchList.isEmpty()) { String topMatch = textMatchList.get(0); PostTask pt = new PostTask(); pt.execute(topMatch); } } } } private class PostTask extends AsyncTask<String, String, String> { […]

Node.js(使用express&bodyParser):无法从post请求中获取表单数据

我似乎无法恢复发送到我的Node.js服务器的发布请求的表单数据。 我已经把服务器代码和post请求(使用postman in chrome发送)放在下面: 发布请求 POST /api/login HTTP/1.1 Host: localhost:8080 Cache-Control: no-cache —-WebKitFormBoundaryE19zNvXGzXaLvS5C Content-Disposition: form-data; name="userName" jem —-WebKitFormBoundaryE19zNvXGzXaLvS5C NodeJS服务器代码 var express = require('express'); // call express var app = express(); // define our app using express var bodyParser = require('body-parser'); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); app.use(bodyParser()); app.all('/*', function(req, res, next) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Headers', 'Content-Type,accept,access_token,X-Requested-With'); […]