urllib 3.23.0 → 3.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -68,7 +68,7 @@ class BlobFromStream {
|
|
68
68
|
return 'Blob';
|
69
69
|
}
|
70
70
|
}
|
71
|
-
exports.HEADER_USER_AGENT = (0, default_user_agent_1.default)('node-urllib', '3.
|
71
|
+
exports.HEADER_USER_AGENT = (0, default_user_agent_1.default)('node-urllib', '3.25.0');
|
72
72
|
function getFileName(stream) {
|
73
73
|
const filePath = stream.path;
|
74
74
|
if (filePath) {
|
@@ -356,7 +356,8 @@ class HttpClient extends node_events_1.EventEmitter {
|
|
356
356
|
}
|
357
357
|
else if (typeof args.files === 'object') {
|
358
358
|
for (const field in args.files) {
|
359
|
-
|
359
|
+
// set custom fileName
|
360
|
+
uploadFiles.push([field, args.files[field], field]);
|
360
361
|
}
|
361
362
|
}
|
362
363
|
// set normal fields first
|
@@ -365,7 +366,7 @@ class HttpClient extends node_events_1.EventEmitter {
|
|
365
366
|
formData.append(field, args.data[field]);
|
366
367
|
}
|
367
368
|
}
|
368
|
-
for (const [index, [field, file]] of uploadFiles.entries()) {
|
369
|
+
for (const [index, [field, file, customFileName]] of uploadFiles.entries()) {
|
369
370
|
if (typeof file === 'string') {
|
370
371
|
// FIXME: support non-ascii filename
|
371
372
|
// const fileName = encodeURIComponent(basename(file));
|
@@ -375,10 +376,10 @@ class HttpClient extends node_events_1.EventEmitter {
|
|
375
376
|
formData.append(field, new BlobFromStream(fileReadable, mime_types_1.default.lookup(fileName) || ''), fileName);
|
376
377
|
}
|
377
378
|
else if (Buffer.isBuffer(file)) {
|
378
|
-
formData.append(field, new node_buffer_1.Blob([file]), `bufferfile${index}`);
|
379
|
+
formData.append(field, new node_buffer_1.Blob([file]), customFileName || `bufferfile${index}`);
|
379
380
|
}
|
380
381
|
else if (file instanceof node_stream_1.Readable || (0, utils_js_1.isReadable)(file)) {
|
381
|
-
const fileName = getFileName(file) || `streamfile${index}`;
|
382
|
+
const fileName = getFileName(file) || customFileName || `streamfile${index}`;
|
382
383
|
formData.append(field, new BlobFromStream(file, mime_types_1.default.lookup(fileName) || ''), fileName);
|
383
384
|
isStreamingRequest = true;
|
384
385
|
}
|
@@ -579,6 +580,7 @@ class HttpClient extends node_events_1.EventEmitter {
|
|
579
580
|
return await this.#requestInternal(url, options, requestContext);
|
580
581
|
}
|
581
582
|
}
|
583
|
+
debug('Request#%d got response, status: %s, headers: %j, timing: %j', requestId, res.status, res.headers, res.timing);
|
582
584
|
channels.response.publish({
|
583
585
|
request: reqMeta,
|
584
586
|
response: res,
|
package/dist/esm/HttpClient.js
CHANGED
@@ -62,7 +62,7 @@ class BlobFromStream {
|
|
62
62
|
return 'Blob';
|
63
63
|
}
|
64
64
|
}
|
65
|
-
export const HEADER_USER_AGENT = createUserAgent('node-urllib', '3.
|
65
|
+
export const HEADER_USER_AGENT = createUserAgent('node-urllib', '3.25.0');
|
66
66
|
function getFileName(stream) {
|
67
67
|
const filePath = stream.path;
|
68
68
|
if (filePath) {
|
@@ -350,7 +350,8 @@ export class HttpClient extends EventEmitter {
|
|
350
350
|
}
|
351
351
|
else if (typeof args.files === 'object') {
|
352
352
|
for (const field in args.files) {
|
353
|
-
|
353
|
+
// set custom fileName
|
354
|
+
uploadFiles.push([field, args.files[field], field]);
|
354
355
|
}
|
355
356
|
}
|
356
357
|
// set normal fields first
|
@@ -359,7 +360,7 @@ export class HttpClient extends EventEmitter {
|
|
359
360
|
formData.append(field, args.data[field]);
|
360
361
|
}
|
361
362
|
}
|
362
|
-
for (const [index, [field, file]] of uploadFiles.entries()) {
|
363
|
+
for (const [index, [field, file, customFileName]] of uploadFiles.entries()) {
|
363
364
|
if (typeof file === 'string') {
|
364
365
|
// FIXME: support non-ascii filename
|
365
366
|
// const fileName = encodeURIComponent(basename(file));
|
@@ -369,10 +370,10 @@ export class HttpClient extends EventEmitter {
|
|
369
370
|
formData.append(field, new BlobFromStream(fileReadable, mime.lookup(fileName) || ''), fileName);
|
370
371
|
}
|
371
372
|
else if (Buffer.isBuffer(file)) {
|
372
|
-
formData.append(field, new Blob([file]), `bufferfile${index}`);
|
373
|
+
formData.append(field, new Blob([file]), customFileName || `bufferfile${index}`);
|
373
374
|
}
|
374
375
|
else if (file instanceof Readable || isReadable(file)) {
|
375
|
-
const fileName = getFileName(file) || `streamfile${index}`;
|
376
|
+
const fileName = getFileName(file) || customFileName || `streamfile${index}`;
|
376
377
|
formData.append(field, new BlobFromStream(file, mime.lookup(fileName) || ''), fileName);
|
377
378
|
isStreamingRequest = true;
|
378
379
|
}
|
@@ -573,6 +574,7 @@ export class HttpClient extends EventEmitter {
|
|
573
574
|
return await this.#requestInternal(url, options, requestContext);
|
574
575
|
}
|
575
576
|
}
|
577
|
+
debug('Request#%d got response, status: %s, headers: %j, timing: %j', requestId, res.status, res.headers, res.timing);
|
576
578
|
channels.response.publish({
|
577
579
|
request: reqMeta,
|
578
580
|
response: res,
|
package/package.json
CHANGED
package/src/HttpClient.ts
CHANGED
@@ -440,7 +440,7 @@ export class HttpClient extends EventEmitter {
|
|
440
440
|
requestOptions.method = 'POST';
|
441
441
|
}
|
442
442
|
const formData = new FormData();
|
443
|
-
const uploadFiles: [string, string | Readable | Buffer][] = [];
|
443
|
+
const uploadFiles: [string, string | Readable | Buffer, string?][] = [];
|
444
444
|
if (Array.isArray(args.files)) {
|
445
445
|
for (const [ index, file ] of args.files.entries()) {
|
446
446
|
const field = index === 0 ? 'file' : `file${index}`;
|
@@ -452,7 +452,8 @@ export class HttpClient extends EventEmitter {
|
|
452
452
|
uploadFiles.push([ 'file', args.files ]);
|
453
453
|
} else if (typeof args.files === 'object') {
|
454
454
|
for (const field in args.files) {
|
455
|
-
|
455
|
+
// set custom fileName
|
456
|
+
uploadFiles.push([ field, args.files[field], field ]);
|
456
457
|
}
|
457
458
|
}
|
458
459
|
// set normal fields first
|
@@ -461,7 +462,7 @@ export class HttpClient extends EventEmitter {
|
|
461
462
|
formData.append(field, args.data[field]);
|
462
463
|
}
|
463
464
|
}
|
464
|
-
for (const [ index, [ field, file ]] of uploadFiles.entries()) {
|
465
|
+
for (const [ index, [ field, file, customFileName ]] of uploadFiles.entries()) {
|
465
466
|
if (typeof file === 'string') {
|
466
467
|
// FIXME: support non-ascii filename
|
467
468
|
// const fileName = encodeURIComponent(basename(file));
|
@@ -470,9 +471,9 @@ export class HttpClient extends EventEmitter {
|
|
470
471
|
const fileReadable = createReadStream(file);
|
471
472
|
formData.append(field, new BlobFromStream(fileReadable, mime.lookup(fileName) || ''), fileName);
|
472
473
|
} else if (Buffer.isBuffer(file)) {
|
473
|
-
formData.append(field, new Blob([ file ]), `bufferfile${index}`);
|
474
|
+
formData.append(field, new Blob([ file ]), customFileName || `bufferfile${index}`);
|
474
475
|
} else if (file instanceof Readable || isReadable(file as any)) {
|
475
|
-
const fileName = getFileName(file) || `streamfile${index}`;
|
476
|
+
const fileName = getFileName(file) || customFileName || `streamfile${index}`;
|
476
477
|
formData.append(field, new BlobFromStream(file, mime.lookup(fileName) || ''), fileName);
|
477
478
|
isStreamingRequest = true;
|
478
479
|
}
|
@@ -667,6 +668,8 @@ export class HttpClient extends EventEmitter {
|
|
667
668
|
}
|
668
669
|
}
|
669
670
|
|
671
|
+
debug('Request#%d got response, status: %s, headers: %j, timing: %j',
|
672
|
+
requestId, res.status, res.headers, res.timing);
|
670
673
|
channels.response.publish({
|
671
674
|
request: reqMeta,
|
672
675
|
response: res,
|