![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
url-sanitizer
Advanced tools
URL sanitizer for Node.js (>=18), browsers and web sites. Experimental
npm i url-sanitizer
For browsers and web sites, standalone ESM builds are available in dist/
directory.
Or, download them from Releases.
import urlSanitizer, {
isURI, isURISync, sanitizeURL, sanitizeURLSync
} from 'url-sanitizer';
Sanitize the given URL.
data
and file
schemes must be explicitly allowed.javascript
and vbscript
schemes can not be allowed.url
string URL inputopt
object optionsopt.allow
Array<string> array of allowed schemesopt.deny
Array<string> array of denied schemesReturns Promise<string?> sanitized URL, null
able
const res1 = await sanitizeURL('http://example.com/?<script>alert(1);</script>')
.then(res => decodeURIComponent(res));
// -> 'http://example.com/?<script>alert(1);</script>'
const res2 = await sanitizeURL('data:text/html,<script>alert(1);</script>', {
allow: ['data']
}).then(res => decodeURIComponent(res));
// -> 'data:text/html,<script>alert(1);</script>'
// Can parse and sanitize base64 encoded data
const base64data3 = btoa('<script>alert(1);</script>');
const res3 = await sanitizeURL(`data:text/html;base64,${base64data3}`, {
allow: ['data']
}).then(res => decodeURIComponent(res));
// -> 'data:text/html,<script>alert(1);</script>'
Synchronous version of the sanitizeURL().
Determines whether the given URI is valid.
uri
string URI inputReturns Promise<boolean> result
true
for web+*
and ext+*
schemesconst res1 = await isURI('https://example.com/foo');
// -> true
const res2 = await isURI('mailto:foo@example.com');
// -> true
const res3 = await isURI('foo:bar');
// -> false
const res4 = await isURI('web+foo:bar');
// -> true
Synchronous version of the isURI().
Get an array of URI schemes registered at iana.org.
moz-extension
scheme added.Returns Array<string> array of registered URI schemes
const schemes = urlSanitizer.get();
// -> ['aaa', 'aaas', 'about', 'acap', 'acct', 'acd', 'acr', ...];
Check if the given scheme is registered.
scheme
string schemeReturns boolean result
const res1 = urlSanitizer.has('https');
// -> true
const res2 = urlSanitizer.has('foo');
// -> false
Add a scheme to the list of URI schemes.
javascript
and vbscript
schemes can not be registered. It throws.scheme
string schemeReturns Array<string> array of registered URI schemes
console.log(isURISync('foo'));
// -> false;
const res = urlSanitizer.add('foo');
// -> ['aaa', 'aaas', 'about', 'acap', 'acct', 'acd', ... 'foo', ...];
console.log(isURISync('foo'));
// -> true;
Remove a scheme from the list of URI schemes.
scheme
string schemeReturns boolean result
true
if the scheme is successfully removed, false
otherwise.console.log(isURISync('aaa'));
// -> true;
const res1 = urlSanitizer.remove('aaa');
// -> true
console.log(isURISync('aaa'));
// -> false;
const res2 = urlSanitizer.remove('foo');
// -> false
FAQs
URL sanitizer for Node.js, browsers and web sites.
The npm package url-sanitizer receives a total of 0 weekly downloads. As such, url-sanitizer popularity was classified as not popular.
We found that url-sanitizer demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.