uri-js - An RFC 3986 compliant, scheme extendable URI parsing/validating/normalizing/resolving library for JavaScript

  •        3

URI.js is an RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for all JavaScript environments (browsers, Node.js, etc). It is also compliant with the IRI (RFC 3987) and IDNA (RFC 5890) specifications. URI.js has an extensive test suite, and works in all (Node.js, web) environments. It weighs in at 5.6kb (gzipped, 15kb deflated).

https://github.com/garycourt/uri-js

Dependencies:

punycode : ^2.1.0

Tags
Implementation
License
Platform

   




Related Projects

sociogram-angular-ionic - A sample application demonstrating how to integrate with Facebook in your Angular/Ionic apps

  •    Javascript

A sample application that demonstrates a lightweight approach to integrate with Facebook in your AngularJS / Ionic apps. Create a Facebook app here: https://developers.facebook.com/apps. In the advanced settings, make sure you declare a “Valid OAuth redirect URI”. For example, if during development you access your application from http://localhost/openfb/index.html, you must declare http://localhost/openfb/oauthcallback.html as a valid redirect URI. Also add https://www.facebook.com/connect/login_success.html as a Valid OAuth redirect URI for access from Cordova.

nuster - A web caching proxy server based on HAProxy

  •    C

Nuster is a simple yet powerful web caching proxy server based on HAProxy. It is 100% compatible with HAProxy, and takes full advantage of the ACL functionality of HAProxy to provide fine-grained caching policy based on the content of request, response or server status. Nuster is very fast, some test shows nuster is almost three times faster than nginx when both using single core, and nearly two times faster than nginx and three times faster than varnish when using all cores.

got - Simplified HTTP requests

  •    Javascript

A nicer interface to the built-in http module.Created because request is bloated (several megabytes!).

cors-anywhere - CORS Anywhere is a NodeJS reverse proxy which adds CORS headers to the proxied request

  •    Javascript

CORS Anywhere is a NodeJS proxy which adds CORS headers to the proxied request. The url to proxy is literally taken from the path, validated and proxied. The protocol part of the proxied URI is optional, and defaults to "http". If port 443 is specified, the protocol defaults to "https".

postrank-uri - URI normalization, c18n, escaping, and extraction

  •    Ruby

URI normalization, c18n, escaping, and extraction


DeepLinkDispatch - A simple, annotation-based library for making deep link handling better on Android

  •    Java

DeepLinkDispatch provides a declarative, annotation-based API to define application deep links.You can register an Activity to handle specific deep links by annotating it with @DeepLink and a URI. DeepLinkDispatch will parse the URI and dispatch the deep link to the appropriate Activity, along with any parameters specified in the URI.

addressable - Addressable is a replacement for the URI implementation that is part of Ruby's standard library

  •    Ruby

Addressable is a replacement for the URI implementation that is part of Ruby's standard library. It more closely conforms to RFC 3986, RFC 3987, and RFC 6570 (level 4), providing support for IRIs and URI templates. For more details, see RFC 6570.

bidi - Bidirectional URI routing

  •    Clojure

In the grand tradition of Clojure libraries we begin with an irrelevant quote. Bi-directional URI dispatch. Like Compojure, but when you want to go both ways. If you are serving REST resources, you should be providing links to other resources, and without full support for forming URIs from handlers your code will become coupled with your routing. In short, hard-coded URIs will eventually break.

logstash-logger - Ruby logger that writes logstash events

  •    Ruby

LogStashLogger extends Ruby's Logger class to log directly to Logstash. It supports writing to various outputs in logstash JSON format. This is an improvement over writing to a file or syslog since Logstash can receive the structured data directly. You can use a URI to configure your logstash logger instead of a hash. This is useful in environments such as Heroku where you may want to read configuration values from the environment. The URI scheme is type://host:port/path?key=value. Some sample URI configurations are given below.

urianchor - jQuery plugin to manage the uri hash component. Used for SinglePageWebApps.

  •    Javascript

This is a library that strives to be best-in-class. If you are considering using an SPA framework, please read Do you really want an SPA framework? first. Make your application bookmarks, browser history, the back button, and the forward button act just as the user expects while enabling you to update only the part of the page that has changed. This jQuery plugin helps you do this by making the URI Anchor (or hash fragment, as others call it) your application state API.

jsUri - Uri parsing and manipulation for node.js and the browser.

  •    Javascript

URI parsing and manipulation for node.js and the browser.

sttp - The Scala HTTP client you always wanted!

  •    Scala

sttp is an open-source library which provides a clean, programmer-friendly API to define HTTP requests and execute them using one of the wrapped backends, such as akka-http, async-http-client or OkHttp. sttp documentation is available at sttp.readthedocs.io.

LittleProxy - High Performance HTTP Proxy

  •    Java

LittleProxy is a high performance HTTP proxy written in Java atop Trustin Lee's excellent Netty event-based networking library. It's quite stable, performs well, and is easy to integrate into your projects. A proxy server like LittleProxy contains always a web server, too. If you get an URI without scheme, host and port in originalRequest it's a direct request to your proxy. You can return a HttpFilters implementation which answers responses with HTML content.

down - Streaming downloads using net/http, http.rb or wget

  •    Ruby

Down is a utility tool for streaming, flexible and safe downloading of remote files. It can use open-uri + Net::HTTP, HTTP.rb or wget as the backend HTTP library. What is the advantage over simply checking size after downloading? Well, Down terminates the download very early, as soon as it gets the Content-Length header. And if the Content-Length header is missing, Down will terminate the download as soon as the downloaded content surpasses the maximum size.

addressable

  •    Ruby

Addressable is a replacement for the URI implementation that is part of Ruby's standard library. It more closely conforms to RFC 3986, RFC 3987, and RFC 6570 (level 4), additionally providing support for IRIs and URI templates.

web call

  •    Pascal

Tools and libraries for dialing URI addresses directly from telephone's numeric keypad w/o phone directories. Encoded uri (for instance, SIP VoIP phone number) consists of decimal numbers only and can be entered from any telephone or other device.

URI.JS - Javascript URL mutation library

  •    Javascript

URI.js is a javascript library for working with URLs. It offers a "jQuery-style" API (Fluent Interface, Method Chaining) to read and write all regular components and a number of convenience methods like .directory() and .authority(). URI.js offers simple, yet powerful ways of working with query string, has a number of URI-normalization functions and converts relative/absolute paths. While URI.js provides a jQuery plugin. URI.js itself does not rely on jQuery. You don't need jQuery to use URI.js

dex - Index and query analyzer for MongoDB: compares MongoDB log files and index entries to make index recommendations

  •    Python

Dex is a MongoDB performance tuning tool that compares queries to the available indexes in the queried collection(s) and generates index suggestions based on simple heuristics. Currently you must provide a connection URI for your database. Dex uses the URI you provide as a helpful way to determine when an index is recommended. Dex does not take existing indexes into account when actually constructing its ideal recommendation.

MVVMLight - A toolkit help to build Android MVVM Application

  •    Java

requires at least android gradle plugin 1.5.0. Binding URI to the ImageView with bind:uri will make it loading bitmap from URI and render to ImageView automatically.

Cookies - JavaScript Client-Side Cookie Manipulation Library

  •    Javascript

Cookies.js is a small client-side javascript library that makes managing cookies easy. RFC6265 defines a strict set of allowed characters for cookie keys and values. In order to effectively allow any character to be used in a key or value, Cookies.js will URI encode disallowed characters in their UTF-8 representation. As such, Cookies.js also expects cookie keys and values to already be URI encoded in a UTF-8 representation when it accesses cookies. Keep this in mind when working with cookies on the server side.