[restify] Use formidable file type for file uploads (#40391)

* Use formidable file type for file uploads

* Remove triple-slash import
This commit is contained in:
Niklas Mollenhauer 2019-11-19 21:39:47 +01:00 committed by Sheetal Nandi
parent bf361defa3
commit b81ff8f424
2 changed files with 17 additions and 7 deletions

View File

@ -17,6 +17,7 @@ import url = require('url');
import spdy = require('spdy');
import stream = require('stream');
import zlib = require('zlib');
import { File } from 'formidable';
export interface ServerOptions {
ca?: string | Buffer | ReadonlyArray<string | Buffer>;
@ -418,11 +419,6 @@ export class Router {
strictNext: boolean;
}
export interface RequestFileInterface {
path: string;
type: string;
}
export interface RequestAuthorization {
scheme: string;
credentials: string;
@ -644,8 +640,8 @@ export interface Request extends http.IncomingMessage {
/** available when queryParser or bodyParser plugin is used with mapParams enabled. */
params?: any;
/** available when serveStatic plugin is used. */
files?: { [name: string]: RequestFileInterface };
/** available when multipartBodyParser plugin is used. */
files?: { [name: string]: File | undefined; };
/** available when authorizationParser plugin is used */
username?: string;

View File

@ -143,6 +143,7 @@ server.use(restify.plugins.queryParser());
server.use(restify.plugins.jsonp());
server.use(restify.plugins.gzipResponse());
server.use(restify.plugins.bodyParser());
server.use(restify.plugins.multipartBodyParser());
server.use(
restify.plugins.serveStaticFiles('somePath', {
etag: '1',
@ -172,6 +173,19 @@ server.use(restify.plugins.conditionalHandler([{
version: '0.0.0',
}]));
server.post("/test-files", (req, res, next) => {
const files = req.files;
if (files) {
const testFile = files["test"];
if (testFile) {
console.log(testFile.path);
console.log(testFile.name);
console.log(testFile.size);
}
}
next();
});
const logger = Logger.createLogger({ name: "test" });
server.on('after', restify.plugins.auditLogger({ event: 'after', log: logger }));