Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
url-template
Advanced tools
This is a simple URI template implementation following the [RFC 6570 URI Template specification](http://tools.ietf.org/html/rfc6570). The implementation supports all levels defined in the specification and is extensively tested.
The url-template npm package is a utility for expanding URLs that follow the URI Template specification as per RFC 6570. This package allows developers to programmatically build URLs with variable substitutions in a template format, making it easier to handle complex URL generation scenarios.
URL Expansion
This feature allows for the expansion of URL templates with variables. The template is defined with placeholders, and the expand method replaces these placeholders with actual values provided in an object.
var urlTemplate = require('url-template');
var template = urlTemplate.parse('/{section}/{topic}{?orderby,direction}');
var url = template.expand({ section: 'blog', topic: 'npm-packages', orderby: 'date', direction: 'asc' });
console.log(url); // Outputs: /blog/npm-packages?orderby=date&direction=asc
Similar to url-template, uri-templates also implements RFC 6570 URI Template specification. It provides a similar API for parsing and expanding URI templates but might differ in specific parsing capabilities or performance optimizations.
This is a simple URI template implementation following the RFC 6570 URI Template specification. The implementation supports all levels defined in the specification and is extensively tested.
For use with Node.js you can install it through npm:
$ npm install url-template
If you want to use it in a browser, copy lib/url-template.js
into your project and use the global urltemplate
instance. Alternatively you can use Bower to install this package:
$ bower install url-template
var template = require('url-template');
...
var emailUrl = template.parse('/{email}/{folder}/{id}');
// Returns '/user@domain/test/42'
emailUrl.expand({
email: 'user@domain',
folder: 'test',
id: 42
});
The RFC states that errors in the templates could optionally be handled and reported to the user. This implementation takes a slightly different approach in that it tries to do a best effort template expansion and leaves erroneous expressions in the returned URI instead of throwing errors. So for example, the incorrect expression {unclosed
will return {unclosed
as output. The leaves incorrect URLs to be handled by your URL library of choice.
FAQs
A URI template implementation (RFC 6570 compliant)
The npm package url-template receives a total of 2,074,029 weekly downloads. As such, url-template popularity was classified as popular.
We found that url-template demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 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
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.