ProxyConfig

ProxyConfig

new ProxyConfig(optionsopt)

A ProxyConfig definition that represents the proxy configuration for an url match. Properties can then use the .toObjectResolved function to procure an object representation of the property with all the variable references replaced by corresponding values.

Parameters:
Name Type Attributes Description
options ProxyConfig.definition <optional>

Specifies object with props matches, server and tunnel.

Source:
Example

Create a new ProxyConfig

var ProxyConfig = require('postman-collection').ProxyConfig,
    myProxyConfig = new ProxyConfig({
         host: 'proxy.com',
         match: 'http+https://example.com/*',
         port: 8080,
         tunnel: true,
         disabled: false,
         authenticate: true,
         username: 'proxy_username',
         password: 'proxy_password'
    });

Extends

Members

(static) authenticate :Boolean

Enable proxy authentication

Type:
  • Boolean
Source:

(static) bypass :UrlMatchPatternList

Proxy bypass list

Type:
Source:

(static) host :String

The proxy server host or ip

Type:
  • String
Source:

(static) match :String

The url mach for which the proxy has been associated with.

Type:
  • String
Source:

(static) password :String

Proxy auth password

Type:
  • String
Source:

(static) port :Number

The proxy server port number

Type:
  • Number
Source:

(static) tunnel :Boolean

This represents whether the tunneling needs to done while proxying this request.

Type:
  • Boolean
Source:

(static) username :String

Proxy auth username

Type:
  • String
Source:

disabled :Boolean

This (optional) flag denotes whether this property is disabled or not. Usually, this is helpful when a property is part of a PropertyList. For example, in a PropertyList of Headers, the ones that are disabled can be filtered out and not processed.

Type:
  • Boolean
Inherited From:
Source:

id :String

The id of the property is a unique string that identifies this property and can be used to refer to this property from relevant other places. It is a good practice to define the id or let the system auto generate a UUID if one is not defined for properties that require an id.

Type:
  • String
Inherited From:
Source:

name :String

A property can have a distinctive and human-readable name. This is to be used to display the name of the property within Postman, Newman or other runtimes that consume collection. In certain cases, the absence of name might cause the runtime to use the id as a fallback.

Type:
  • String
Inherited From:
Source:

Methods

(static) isProxyConfig(obj) → {Boolean}

Check whether an object is an instance of PostmanItem.

Parameters:
Name Type Description
obj *
Source:
Returns:
Type
Boolean

describe(content, typeopt)

This function allows to describe the property for the purpose of detailed identification or documentation generation. This function sets or updates the description child-property of this property.

Parameters:
Name Type Attributes Default Description
content String

The content of the description can be provided here as a string. Note that it is expected that if the content is formatted in any other way than simple text, it should be specified in the subsequent type parameter.

type String <optional>
"text/plain"

The type of the content.

Inherited From:
Source:
Example

Add a description to an instance of Collection

 var Collection = require('postman-collection').Collection,
    mycollection;

// create a blank collection
myCollection = new Collection();
myCollection.describe('Hey! This is a cool collection.');

console.log(myCollection.description.toString()); // read the description

findInParents(property, customizeropt) → {*|undefined}

Tries to find the given property locally, and then proceeds to lookup in each parent, going up the chain as necessary. Lookup will continue until customizer returns a truthy value. If used without a customizer, the lookup will stop at the first parent that contains the property.

Parameters:
Name Type Attributes Description
property String
customizer function <optional>
Inherited From:
Source:
Returns:
Type
* | undefined

forEachParent(options, iterator)

Invokes the given iterator for every parent in the parent chain of the given element.

Parameters:
Name Type Description
options Object

A set of options for the parent chain traversal.

Properties
Name Type Attributes Default Description
withRoot Boolean <optional>
<nullable>
false

Set to true to include the collection object as well.

iterator function

The function to call for every parent in the ancestry chain.

Inherited From:
Source:
To Do:
  • Cache the results

getProtocols() → {Array.<String>}

Returns the protocols supported.

Source:
Returns:
Type
Array.<String>

getProxyUrl() → {String}

Returns the proxy server url.

Source:
Returns:
Type
String

meta() → {*}

Returns the meta keys associated with the property

Inherited From:
Source:
Returns:
Type
*

parent() → {*|undefined}

Returns the parent of item

Inherited From:
Source:
Returns:
Type
* | undefined

test(urlStropt)

Tests the url string with the match provided. Follows the https://developer.chrome.com/extensions/match_patterns pattern for pattern validation and matching

Parameters:
Name Type Attributes Description
urlStr String <optional>

The url string for which the proxy match needs to be done.

Source:

toJSON()

Returns the JSON representation of a property, which conforms to the way it is defined in a collection. You can use this method to get the instantaneous representation of any property, including a Collection.

Inherited From:
Source:

update(options)

Updates the properties of the proxy object based on the options provided.

Parameters:
Name Type Description
options ProxyConfig.definition

The proxy object structure.

Source:

updateProtocols(protocols)

Updates the protocols in the match pattern

Parameters:
Name Type Description
protocols Array.<String>

The array of protocols

Source:

Type Definitions

definition

The following is the object structure accepted as constructor parameter while calling new ProxyConfig(...). It is also the structure exported when Property#toJSON or Property#toObjectResolved is called on a Proxy instance.

Properties:
Name Type Attributes Default Description
match String <optional>
'http+https://*\/*'

The match for which the proxy needs to be configured.

host String <optional>
''

The proxy server url.

port Number <optional>
8080

The proxy server port number.

tunnel Boolean <optional>
false

The tunneling option for the proxy request.

disabled Boolean <optional>
false

To override the proxy for the particular url, you need to provide true.

authenticate Boolean <optional>
false

To enable authentication for the proxy, you need to provide true.

username String <optional>

The proxy authentication username

password String <optional>

The proxy authentication password

Source:
Example

JSON definition of an example proxy object

{
    "match": "http+https://example.com/*",
    "host": "proxy.com",
    "port": "8080",
    "tunnel": true,
    "disabled": false,
    "authenticate": true,
    "username": "proxy_username",
    "password": "proxy_password"
}