Javascript 如何将文件发送到RESTifyAPI并保存在MySQL中
对于一个学校项目,我需要通过拖放将一个文件上传到mariadb表。 我目前正在使用node.js和restify作为后端,使用jquery作为前端。我就是没办法让它工作。Javascript 如何将文件发送到RESTifyAPI并保存在MySQL中,javascript,jquery,mysql,node.js,restify,Javascript,Jquery,Mysql,Node.js,Restify,对于一个学校项目,我需要通过拖放将一个文件上传到mariadb表。 我目前正在使用node.js和restify作为后端,使用jquery作为前端。我就是没办法让它工作。 以下是我发送文件的方式: 删除该文件 发送 对于后端,我已经看到restify不支持多部分表单数据,并阅读了一些require库,但确实不理解这个概念,并设法使其工作。 这是我的应用程序: var restify = require('restify'); var request = require('request');
以下是我发送文件的方式:
删除该文件
发送
对于后端,我已经看到restify不支持多部分表单数据,并阅读了一些require库,但确实不理解这个概念,并设法使其工作。
这是我的应用程序:
var restify = require('restify');
var request = require('request');
var mysql = require('mysql');
connection = mysql.createConnection({
host: 'localhost',
user: 'servilleta',
password: 'guest',
database: 'guest'
});
var ip_addr = '172.16.3.146';
var port = '8000';
var http = require('http');
var server = restify.createServer({
name: 'apirest'
});
server.use(restify.queryParser());
server.use(restify.bodyParser());
server.use(restify.CORS());
server.listen(port, ip_addr, function () {
console.log('%s active on %s ', server.name, server.url);
});
function uploadFile(req, res, next) {
console.log("A file wants to be uploaded");
var query = "LOAD DATA LOCAL INFILE '" + req.params.file + "'INTO TABLE Practica11 FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n' (nombre,ApellidoPat,ApellidoMat,NumeroCuenta,Carrera) ";
connection.query(query, function (error, result) {
if (error) throw error;
res.send(200, result);
return next();
});
}
request.post({
path: '/subir/',
formData: formData
}, uploadFile);
connection.end();
抱歉发了这么长的帖子。不确定问题是什么?如果浏览器控制台或nodejs端出现错误,请也发出来
var restify = require('restify');
var request = require('request');
var mysql = require('mysql');
connection = mysql.createConnection({
host: 'localhost',
user: 'servilleta',
password: 'guest',
database: 'guest'
});
var ip_addr = '172.16.3.146';
var port = '8000';
var http = require('http');
var server = restify.createServer({
name: 'apirest'
});
server.use(restify.queryParser());
server.use(restify.bodyParser());
server.use(restify.CORS());
server.listen(port, ip_addr, function () {
console.log('%s active on %s ', server.name, server.url);
});
function uploadFile(req, res, next) {
console.log("A file wants to be uploaded");
var query = "LOAD DATA LOCAL INFILE '" + req.params.file + "'INTO TABLE Practica11 FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n' (nombre,ApellidoPat,ApellidoMat,NumeroCuenta,Carrera) ";
connection.query(query, function (error, result) {
if (error) throw error;
res.send(200, result);
return next();
});
}
request.post({
path: '/subir/',
formData: formData
}, uploadFile);
connection.end();