From f36e6b516dfd77f727b107253bbec9037e647615 Mon Sep 17 00:00:00 2001 From: Sebastian Beltran Date: Tue, 18 Mar 2025 19:41:12 -0500 Subject: [PATCH] feat: add deprecation warnings for redirect arguments undefined --- lib/response.js | 13 +++++++++++++ package.json | 1 + 2 files changed, 14 insertions(+) diff --git a/lib/response.js b/lib/response.js index 9362d0ed5dd..5c530b54b4e 100644 --- a/lib/response.js +++ b/lib/response.js @@ -14,6 +14,7 @@ var contentDisposition = require('content-disposition'); var createError = require('http-errors') +var deprecate = require('depd')('express'); var encodeUrl = require('encodeurl'); var escapeHtml = require('escape-html'); var http = require('node:http'); @@ -825,6 +826,18 @@ res.redirect = function redirect(url) { address = arguments[1] } + if (!address) { + deprecate('Provide a url argument'); + } + + if (typeof address !== 'string') { + deprecate('Url must be a string'); + } + + if (typeof status !== 'number') { + deprecate('Status must be a number'); + } + // Set location header address = this.location(address).get('Location'); diff --git a/package.json b/package.json index 5e5b02d3d02..d0060b1d8f0 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "cookie": "^0.7.1", "cookie-signature": "^1.2.1", "debug": "^4.4.0", + "depd": "^2.0.0", "encodeurl": "^2.0.0", "escape-html": "^1.0.3", "etag": "^1.8.1",