Tag: http

org.springframework.web.multipart.MultipartException:无法parsing多部分servlet请求…stream意外结束

情况: 从Node.js(通过节点核心HTTPS模块)向Spring-Boot Java API提交多部分表单请求。 该API需要两个表单数据元素: “路线” “文件” 完全错误: Exception processed – Main Exception: org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is org.apache.commons.fileupload.FileUploadException: Stream ended unexpectedly Exception processed – Main Exception: org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is org.apache.commons.fileupload.FileUploadException: Stream ended unexpectedly 请求标题: {"Accept":"*/*", "cache-control":"no-cache", "Content-Type":"multipart/form-data; boundary=2baac014-7974-49dd-ae87-7ce56c36c9e7", "Content-Length":7621} FORM-DATA正在写入(全部写成二进制): Content-Type: multipart/form-data; […]

如何在Node.js中使用相同的密钥设置多个http头字段?

我试图用cloudflare设置服务器推送 ,但他们需要多个link头字段来推送多个文件。 但是,我找不到任何logging的方式来包含多个标头字段在node.js中具有相同的键。 我尝试提供一个数组,但是它们将它们连接在一起作为单个头字段的值。

尝试HTTP请求时获取连接ECONNREFUSED 127.0.0.1:80

我正尝试使用本机node.js http模块向news.google.com发出http请求。 当我尝试以下操作时,出现connect ECONNREFUSED 127.0.0.1:80错误 var http = require('http'); var payload = JSON.stringify({ name: 'John Smith', email: 'john.smith@smith.com', resume: 'https://drive.google.com/open?id=asgsaegsehsehseh' }); var options = { hostname: 'https://news.google.com', path: '/', method: 'GET' }; var httpRequest = http.request(options, function(request, response) { console.log('STATUS', response.statusCode); response.setEncoding('utf8'); response.on('data', function(chunk) { console.log('BODY:', chunk); }); response.on('end', function() { console.log('No more data in […]

angular度$ http请求从80端口到另一个端口

我试图从一个angular度1项目使用$ http方法来打击本地服务器上的端口3000的节点API,但我得到这个错误: XMLHttpRequest无法加载http:// localhost:3000 / login 。 请求标头字段预检响应中的Access-Control-Allow-Headers不允许授权。 我还在节点js中添加了Access-Control-Allow-Origin : * : req.on('end', function() { req.rawBody = req.rawBody.toString('utf8'); res.setHeader('Access-Control-Allow-Origin', 'http://localhost'); // Request methods you wish to allow res.setHeader('Access-Control-Allow-Methods', '*'); // Request headers you wish to allow res.setHeader('Access-Control-Allow-Headers', '*'); // Set to true if you need the website to include cookies in the requests sent // […]

多久打一个sqlite数据库

我想知道使用node.js和orlandov的node-sqlite插件为http服务器打开sqlite数据库的频率 。 目前在对服务器的每一个请求中,我加载一个新的数据库实例,然后在完成阅读时closures它。 var db = sqlite.Database(); db.open("data.db", function (error) { … //finally db.close() } 但是,用户可能会在很短的时间内提出很多请求。 暂时搁置每个连接的数据库实例会不好? 或者是一个开放的,closures每个请求的正确方法? 谢谢

为什么node.js将“0”追加到我的POST请求中?

考虑以下非常简单的node.js脚本: http = require('http') options = { host:'localhost', port:8000, method:'POST' } req = http.request(options) req.end() 当我告诉netcat监听8000端口然后执行脚本时,netcat会产生以下内容: POST / HTTP/1.1 Host: localhost:8000 Connection: close Transfer-Encoding: chunked 0 什么是尾随零? 请注意,这不是netcat引入的工件。

处理PLUpload上传与node.js

我正在尝试在node.js中创build服务器端上传组件,但是我无法解释从PLUpload发送的信息。 从我所知道的来说,PLUpload(以HTML5模式)发送文件作为二进制信息,这为node.js包创build了问题,我一直试图使用到目前为止(node-formidable和node-express),因为他们期望正常HTML上传与多部分内容types。 对于它的价值,这是我一直在尝试使用的代码… var formidable = require('formidable'); var sys = require('sys'); http.createServer( function( req, res ){ console.log('request detected'); if( req.url == '/upload/' ){ console.log('request processing'); var form = new formidable.IncomingForm(); form.parse( req, function( err, fields, files ){ res.writeHead( 200, { 'Access-Control-Allow-Origin': 'http://tksync.com', 'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE', 'Access-Control-Allow-Headers': '*', 'content-type': 'text/plain' }); res.write('received upload:\n'); res.end(sys.inspect({ fields: fields, files: […]

通过http-node.js发送jpg的问题

我试图写一个简单的HTTP Web服务器,(其中包括其他function),可以发送客户端请求的文件。 发送一个普通的文本文件/ HTML文件作为一种魅力。 问题是发送图像文件。 这里是我的代码的一部分(parsingMIMEtypes,并包括fs node.js模块): if (MIMEtype == "image") { console.log('IMAGE'); fs.readFile(path, "binary", function(err,data) { console.log("Sending to user: "); console.log('read the file!'); response.body = data; response.end(); }); } else { fs.readFile(path, "utf8", function(err,data) { response.body = data ; response.end() ; }); } 为什么我打开的http://localhost:<serverPort>/test.jpg是空白页面?

NodeJSstream暂停/恢复不适用于XMLHttpRequest,但与curl?

这是一个相当深奥的问题,我不能提供一个小的testing用例,所以提前抱歉。 但是也许有人遇到过这样的事情。 我有这样的代码(使用restify): server.put("/whatever", function (serverRequest, serverResponse, next) { serverRequest.pause(); serverRequest.on("data", function (chunk) { console.log("from outside", chunk); }); doSomeAsyncStuff(function (err) { serverRequest.on("data", function (chunk) { console.log("from inside", chunk); }); serverRequest.on("end", function () { next(); }); serverRequest.resume(); }); }); 当我用CURL打这个服务器时,这个工作很好。 但是当我用XMLHttpRequest命中它的时候,我"from inside"日志"from inside"看到的内容less于"from outside"日志行。 尽pipe我尽最大的努力暂停,但看起来数据事件之一正在迷失。 这是我使用的CURL命令: curl -X PUT -T file.pdf http://localhost:7070/whatever -v 这里是XMLHttpRequest代码(适用于最新版本的Chrome): var arrayBuffer […]

使用node.js实现一个简单的代理服务器

我试图创build一个简单的node.js代理服务器的实验目的,我想出了这个简单的脚本: var url = require("url"); var http = require("http"); var https = require("https"); http.createServer(function (request, response) { var path = url.parse(request.url).path; if (!path.indexOf("/resource/")) { var protocol; path = path.slice(10); var location = url.parse(path); switch (location.protocol) { case "http:": protocol = http; break; case "https:": protocol = https; break; default: response.writeHead(400); response.end(); return; } var options […]