soap 0.42.0 → 0.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/History.md +31 -0
- package/Readme.md +110 -99
- package/SECURITY.md +5 -0
- package/lib/client.d.ts +1 -1
- package/lib/client.js +14 -13
- package/lib/client.js.map +1 -1
- package/lib/http.js +30 -8
- package/lib/http.js.map +1 -1
- package/lib/security/ClientSSLSecurityPFX.d.ts +1 -0
- package/lib/security/ClientSSLSecurityPFX.js.map +1 -1
- package/lib/server.js +19 -5
- package/lib/server.js.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/utils.js +30 -27
- package/lib/utils.js.map +1 -1
- package/lib/wsdl/elements.js +2 -1
- package/lib/wsdl/elements.js.map +1 -1
- package/lib/wsdl/index.js +24 -20
- package/lib/wsdl/index.js.map +1 -1
- package/package.json +22 -19
package/History.md
CHANGED
|
@@ -1,3 +1,34 @@
|
|
|
1
|
+
0.45.0 / 2022-06-15
|
|
2
|
+
===================
|
|
3
|
+
* [FIX] axios peer dependency version (#1188)
|
|
4
|
+
* [MAINTENANCE] Upgrade formidable to v2 (#1183)
|
|
5
|
+
|
|
6
|
+
0.44.0 / 2022-06-06
|
|
7
|
+
===================
|
|
8
|
+
* [DOC] Readme.md: Rewrite how to get support for conciseness, update mentions of the old request module to Axios, improve documentation of several functions' arguments. (#1175)
|
|
9
|
+
* [ENHANCEMENT] Added override constructor to ClientSSLSecurityPFX class (#1184)
|
|
10
|
+
* [ENHANCEMENT] add optional targetNamespace to output message name (#1176)
|
|
11
|
+
* [FIX] Change axios to be a peer dependency (#1179)
|
|
12
|
+
* [FIX] Continuation PR #1169: change content-type-parser to whatwg-mimetype (#1177)
|
|
13
|
+
* [FIX] Fix missing parameter in example (#1172)
|
|
14
|
+
* [FIX] Fix of client events behavior (#1181)
|
|
15
|
+
* [FIX] correctly serialize MTOM into axios data and add Content-Encoding: gzip support in soap request (#1173)
|
|
16
|
+
* [FIX] double await in async and fixed response (#1185)
|
|
17
|
+
* [FIX] package.json: Change value of engines.node key from ">=10.0.0" to ">=12.0.0". (#1178)
|
|
18
|
+
|
|
19
|
+
0.43.0 / 2021-11-12
|
|
20
|
+
===================
|
|
21
|
+
* [DOC] Create SECURITY.md (#1165)
|
|
22
|
+
* [ENHANCEMENT] Publicly expose wsdl in Client (#1167)
|
|
23
|
+
* [ENHANCEMENT] add native support for long deserialization (#1160)
|
|
24
|
+
* [FIX] Fix typo in ISoapFault12 (#1166)
|
|
25
|
+
* [FIX] error when soapaction header is not set (#1171)
|
|
26
|
+
* [FIX] lastElapsedTime for non streaming requests (#1162)
|
|
27
|
+
* [FIX] minor fix for ntlm request (#1163)
|
|
28
|
+
* [FIX] undefined targetNamespace (#1161)
|
|
29
|
+
* [FIX] xsi:type currently requires a namespace, resulting in undefined if no XMLNS is defined. Making attributes working without namespace or xmlns definitions. (#1159)
|
|
30
|
+
* [MAINTENANCE] Bump httpntlm, doctoc as well as other dependencies (#1158)
|
|
31
|
+
|
|
1
32
|
0.42.0 / 2021-08-23
|
|
2
33
|
===================
|
|
3
34
|
* [FIX] check method style if exists instead of binding style (#1153)
|
package/Readme.md
CHANGED
|
@@ -8,16 +8,14 @@ This module lets you connect to web services using SOAP. It also provides a ser
|
|
|
8
8
|
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
|
|
9
9
|
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
|
10
10
|
|
|
11
|
-
|
|
12
11
|
- [Features:](#features)
|
|
13
12
|
- [Install](#install)
|
|
14
|
-
- [
|
|
15
|
-
- [Where can I find help?](#where-can-i-find-help)
|
|
13
|
+
- [Support](#support)
|
|
16
14
|
- [Module](#module)
|
|
17
15
|
- [soap.createClient(url[, options], callback) - create a new SOAP client from a WSDL url. Also supports a local filesystem path.](#soapcreateclienturl-options-callback---create-a-new-soap-client-from-a-wsdl-url-also-supports-a-local-filesystem-path)
|
|
18
16
|
- [soap.createClientAsync(url[, options]) - create a new SOAP client from a WSDL url. Also supports a local filesystem path.](#soapcreateclientasyncurl-options---create-a-new-soap-client-from-a-wsdl-url-also-supports-a-local-filesystem-path)
|
|
19
17
|
- [soap.listen(*server*, *path*, *services*, *wsdl*, *callback*) - create a new SOAP server that listens on *path* and provides *services*.](#soaplistenserver-path-services-wsdl-callback---create-a-new-soap-server-that-listens-on-path-and-provides-services)
|
|
20
|
-
- [
|
|
18
|
+
- [soap.listen(*server*, *options*) - create a new SOAP server that listens on *path* and provides *services*.](#soaplistenserver-options---create-a-new-soap-server-that-listens-on-path-and-provides-services)
|
|
21
19
|
- [Server Logging](#server-logging)
|
|
22
20
|
- [Server Events](#server-events)
|
|
23
21
|
- [Server Response on one-way calls](#server-response-on-one-way-calls)
|
|
@@ -76,89 +74,122 @@ This module lets you connect to web services using SOAP. It also provides a ser
|
|
|
76
74
|
* Handles both RPC and Document schema types
|
|
77
75
|
* Supports multiRef SOAP messages (thanks to [@kaven276](https://github.com/kaven276))
|
|
78
76
|
* Support for both synchronous and asynchronous method handlers
|
|
79
|
-
* WS-Security
|
|
80
|
-
* Supports [
|
|
77
|
+
* WS-Security UsernameToken Profile 1.0
|
|
78
|
+
* Supports [Express](http://expressjs.com/) based web server (body parser middleware can be used)
|
|
81
79
|
|
|
82
80
|
## Install
|
|
83
81
|
|
|
84
|
-
Install with [npm](http://github.com/isaacs/npm):
|
|
85
|
-
|
|
86
82
|
```
|
|
87
83
|
npm install soap
|
|
88
84
|
```
|
|
89
85
|
|
|
90
|
-
##
|
|
91
|
-
|
|
92
|
-
We've disabled issues in the repository and are now solely reviewing pull requests. The reasons why we disabled issues can be found here [#731](https://github.com/vpulim/node-soap/pull/731).
|
|
93
|
-
|
|
94
|
-
## Where can I find help?
|
|
86
|
+
## Support
|
|
95
87
|
|
|
96
|
-
Community support
|
|
88
|
+
Community support is available at Gitter: [![Gitter chat][gitter-image]][gitter-url]
|
|
97
89
|
|
|
98
|
-
[
|
|
90
|
+
Some maintainers provide paid support, which can be request through our [Google Form](https://docs.google.com/forms/d/e/1FAIpQLSdj5EXxd5flcukLInmpFQhEvQYeERaReFFh9F0nqC_4EUmeLg/viewform)
|
|
99
91
|
|
|
100
|
-
|
|
92
|
+
GitHub issues have been disabled to focus on pull requests. ([#731](https://github.com/vpulim/node-soap/pull/731))
|
|
101
93
|
|
|
102
94
|
## Module
|
|
103
95
|
|
|
104
96
|
### soap.createClient(url[, options], callback) - create a new SOAP client from a WSDL url. Also supports a local filesystem path.
|
|
105
97
|
|
|
98
|
+
- `url` (*string*): A HTTP/HTTPS URL or a local filesystem path.
|
|
99
|
+
- `options` (*Object*):
|
|
100
|
+
- `endpoint` (*string*): Override the host specified by the SOAP service in the WSDL file.
|
|
101
|
+
- `envelopeKey` (*string*): Set a custom envelope key. (**Default:** `'soap'`)
|
|
102
|
+
- `preserveWhitespace` (*boolean*): Preserve any leading and trailing whitespace characters in text and cdata.
|
|
103
|
+
- `escapeXML` (*boolean*): Escape special XML characters (e.g. `&`, `>`, `<` etc) in SOAP messages. (**Default:** `true`)
|
|
104
|
+
- `suppressStack` (*boolean*): Suppress the full stack trace for error messages.
|
|
105
|
+
- `returnFault` (*boolean*): Return an `Invalid XML` SOAP fault upon a bad request. (**Default:** `false`)
|
|
106
|
+
- `forceSoap12Headers` (*boolean*): Enable SOAP 1.2 compliance.
|
|
107
|
+
- `httpClient` (*Object*): Override the built-in HttpClient object with your own. Must implement `request(rurl, data, callback, exheaders, exoptions)`.
|
|
108
|
+
- `request` (*Object*): Override the default request module ([Axios](https://axios-http.com/) as of `v0.40.0`).
|
|
109
|
+
- `wsdl_headers` (*Object*): Set HTTP headers with values to be sent on WSDL requests.
|
|
110
|
+
- `wsdl_options` (*Object*): Set options for the request module on WSDL requests. If using the default request module, see [Request Config | Axios Docs](https://axios-http.com/docs/req_config).
|
|
111
|
+
- `disableCache` (*boolean*): Prevents caching WSDL files and option objects.
|
|
112
|
+
- `overridePromiseSuffix` (*string*): Override the default method name suffix of WSDL operations for Promise-based methods. If any WSDL operation name ends with `Async', you must use this option. (**Default:** `Async`)
|
|
113
|
+
- `normalizeNames` (*boolean*): Replace non-identifier characters (`[^a-z$_0-9]`) with `_` in WSDL operation names. Note: Clients using WSDLs with two operations like `soap:method` and `soap-method` will be overwritten. In this case, you must use bracket notation instead (`client['soap:method']()`).
|
|
114
|
+
- `namespaceArrayElements` (*boolean*): Support non-standard array semantics. JSON arrays of the form `{list: [{elem: 1}, {elem: 2}]}` will be marshalled into XML as `<list><elem>1</elem></list> <list><elem>2</elem></list>`. If `false`, it would be marshalled into `<list> <elem>1</elem> <elem>2</elem> </list>`. (**Default:** `true`)
|
|
115
|
+
- `stream` (*boolean*): Use streams to parse the XML SOAP responses. (**Default:** `false`)
|
|
116
|
+
- `returnSaxStream` (*boolean*): Return the SAX stream, transferring responsibility of parsing XML to the end user. Only valid when the *stream* option is set to `true`. (**Default:** `false`)
|
|
117
|
+
- `parseReponseAttachments` (*boolean*): Treat response as multipart/related response with MTOM attachment. Reach attachments on the `lastResponseAttachments` property of SoapClient. (**Default:** `false`)
|
|
118
|
+
- `callback` (*Function*):
|
|
119
|
+
- `err` (*Error* | *<AggregateError>*)
|
|
120
|
+
- `result` (*Any*)
|
|
121
|
+
- Returns: `Client`
|
|
122
|
+
|
|
123
|
+
#### Example
|
|
124
|
+
|
|
106
125
|
``` javascript
|
|
107
126
|
var soap = require('soap');
|
|
108
127
|
var url = 'http://example.com/wsdl?wsdl';
|
|
109
128
|
var args = {name: 'value'};
|
|
110
|
-
|
|
129
|
+
|
|
130
|
+
soap.createClient(url, {}, function(err, client) {
|
|
111
131
|
client.MyFunction(args, function(err, result) {
|
|
112
132
|
console.log(result);
|
|
113
133
|
});
|
|
114
134
|
});
|
|
115
135
|
```
|
|
116
|
-
|
|
136
|
+
|
|
137
|
+
Note: for versions of node >0.10.X, you may need to specify `{connection: 'keep-alive'}` in SOAP headers to avoid truncation of longer chunked responses.
|
|
117
138
|
|
|
118
139
|
### soap.createClientAsync(url[, options]) - create a new SOAP client from a WSDL url. Also supports a local filesystem path.
|
|
119
140
|
|
|
141
|
+
Construct a `Promise<Client>` with the given WSDL file.
|
|
142
|
+
|
|
143
|
+
- `url` (*string*): A HTTP/HTTPS URL or a local filesystem path.
|
|
144
|
+
- `options` (*Object*): See [soap.createClient(url[, options], callback)](#soapcreateclienturl-options-callback---create-a-new-soap-client-from-a-wsdl-url-also-supports-a-local-filesystem-path) for a description.
|
|
145
|
+
- Returns: `Promise<Client>`
|
|
146
|
+
|
|
147
|
+
#### Example
|
|
148
|
+
|
|
120
149
|
``` javascript
|
|
121
150
|
var soap = require('soap');
|
|
122
151
|
var url = 'http://example.com/wsdl?wsdl';
|
|
123
152
|
var args = {name: 'value'};
|
|
153
|
+
|
|
154
|
+
// then/catch
|
|
124
155
|
soap.createClientAsync(url).then((client) => {
|
|
125
156
|
return client.MyFunctionAsync(args);
|
|
126
157
|
}).then((result) => {
|
|
127
158
|
console.log(result);
|
|
128
159
|
});
|
|
160
|
+
|
|
161
|
+
// async/await
|
|
162
|
+
var client = await soap.createClientAsync(url);
|
|
163
|
+
var result = await client.MyFunctionAsync(args);
|
|
164
|
+
console.log(result[0]);
|
|
129
165
|
```
|
|
130
166
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
#### Options
|
|
134
|
-
|
|
135
|
-
The `options` argument allows you to customize the client with the following properties:
|
|
136
|
-
|
|
137
|
-
- endpoint: to override the SOAP service's host specified in the `.wsdl` file.
|
|
138
|
-
- envelopeKey: to set specific key instead of `<pre><soap:Body></soap:Body></pre>`.
|
|
139
|
-
- preserveWhitespace: to preserve leading and trailing whitespace characters in text and cdata.
|
|
140
|
-
- escapeXML: escape special XML characters in SOAP message (e.g. `&`, `>`, `<` etc), default: `true`.
|
|
141
|
-
- suppressStack: suppress the full stack trace for error messages.
|
|
142
|
-
- returnFault: return an `Invalid XML` SOAP fault on a bad request, default: `false`.
|
|
143
|
-
- forceSoap12Headers: to set proper headers for SOAP v1.2.
|
|
144
|
-
- httpClient: to provide your own http client that implements `request(rurl, data, callback, exheaders, exoptions)`.
|
|
145
|
-
- request: to override the [request](https://github.com/request/request) module.
|
|
146
|
-
- wsdl_headers: custom HTTP headers to be sent on WSDL requests.
|
|
147
|
-
- wsdl_options: custom options for the request module on WSDL requests.
|
|
148
|
-
- disableCache: don't cache WSDL files and client options, request them every time.
|
|
149
|
-
- overridePromiseSuffix: if your wsdl operations contains names with Async suffix, you will need to override the default promise suffix to a custom one, default: `Async`.
|
|
150
|
-
- normalizeNames: if your wsdl operations contains names with non identifier characters (`[^a-z$_0-9]`), replace them with `_`. Note: if using this option, clients using wsdls with two operations like `soap:method` and `soap-method` will be overwritten. Then, use bracket notation instead (`client['soap:method']()`).
|
|
151
|
-
- namespaceArrayElements: provides support for nonstandard array semantics. If true, JSON arrays of the form `{list: [{elem: 1}, {elem: 2}]}` are marshalled into xml as `<list><elem>1</elem></list> <list><elem>2</elem></list>`. If false, marshalls into `<list> <elem>1</elem> <elem>2</elem> </list>`. Default: `true`.
|
|
152
|
-
- stream: allows using a stream to parse the XML SOAP response. Default: `false`
|
|
153
|
-
- returnSaxStream: enables the library to return the sax stream, transferring to the end user the responsibility of parsing the XML. It can be used only in combination with *stream* argument set to `true`. Default: `false`
|
|
154
|
-
- parseReponseAttachments: Treat response as multipart/related response with MTOM attachment. Reach attachments on the `lastResponseAttachments` property of SoapClient. Default: `false`
|
|
155
|
-
|
|
156
|
-
Note: for versions of node >0.10.X, you may need to specify `{connection: 'keep-alive'}` in SOAP headers to avoid truncation of longer chunked responses.
|
|
167
|
+
Note: for versions of node >0.10.X, you may need to specify `{connection: 'keep-alive'}` in SOAP headers to avoid truncation of longer chunked responses.
|
|
157
168
|
|
|
158
169
|
### soap.listen(*server*, *path*, *services*, *wsdl*, *callback*) - create a new SOAP server that listens on *path* and provides *services*.
|
|
159
|
-
*server*
|
|
160
|
-
|
|
161
|
-
*
|
|
170
|
+
### soap.listen(*server*, *options*) - create a new SOAP server that listens on *path* and provides *services*.
|
|
171
|
+
|
|
172
|
+
- `server` (*Object*): A [http](https://nodejs.org/api/http.html) server or [Express](http://expressjs.com/) framework based server.
|
|
173
|
+
- `path` (*string*)
|
|
174
|
+
- `options` (*Object*): An object containing *server options* and [WSDL Options](#handling-xml-attributes-value-and-xml-wsdloptions)
|
|
175
|
+
- `path` (*string*)
|
|
176
|
+
- `services` (*Object*)
|
|
177
|
+
- `xml` (*string*)
|
|
178
|
+
- `uri` (*string*)
|
|
179
|
+
- `pfx` (*string* | *Buffer*): The private key, certificate and CA certs of the server in PFX or PKCS12 format. (Mutually exclusive with the key, cert and ca options.)
|
|
180
|
+
- `key` (*string* | *Buffer*): The private key of the server in PEM format. (Could be an array of keys). (Required)
|
|
181
|
+
- `passphrase` (*string*): The passphrase for the private key or pfx.
|
|
182
|
+
- `cert` (*string* | *Buffer*): The certificate key of the server in PEM format. (Could be an array of certs). (Required)
|
|
183
|
+
- `ca` (*string[]* | *Buffer[]*): Trusted certificates in PEM format. If this is omitted several well known "root" CAs will be used, like VeriSign. These are used to authorize connections.
|
|
184
|
+
- `crl` (*string* | *string[]*: PEM encoded CRLs (Certificate Revocation List)
|
|
185
|
+
- `ciphers` (*string*): A description of the ciphers to use or exclude, separated by `:`. The default cipher suite is:
|
|
186
|
+
- `enableChunkedEncoding` (*boolean*): Controls chunked transfer encoding in response. Some clients (such as Windows 10's MDM enrollment SOAP client) are sensitive to transfer-encoding mode and can't accept chunked response. This option lets users disable chunked transfer encoding for such clients. (**Default:** `true`)
|
|
187
|
+
- `services` (*Object*)
|
|
188
|
+
- `wsdl` (*string*): An XML string that defines the service.
|
|
189
|
+
- `callback` (*Function*): A function to run after the server has been initialized.
|
|
190
|
+
- Returns: `Server`
|
|
191
|
+
|
|
192
|
+
#### Example
|
|
162
193
|
|
|
163
194
|
``` javascript
|
|
164
195
|
var myService = {
|
|
@@ -232,20 +263,6 @@ Note: for versions of node >0.10.X, you may need to specify `{connection: 'keep-
|
|
|
232
263
|
|
|
233
264
|
```
|
|
234
265
|
|
|
235
|
-
### Options
|
|
236
|
-
You can pass in server and [WSDL Options](#handling-xml-attributes-value-and-xml-wsdloptions)
|
|
237
|
-
using an options hash.
|
|
238
|
-
|
|
239
|
-
Server options include the below:
|
|
240
|
-
- `pfx`: A string or Buffer containing the private key, certificate and CA certs of the server in PFX or PKCS12 format. (Mutually exclusive with the key, cert and ca options.)
|
|
241
|
-
- `key`: A string or Buffer containing the private key of the server in PEM format. (Could be an array of keys). (Required)
|
|
242
|
-
- `passphrase`: A string of passphrase for the private key or pfx.
|
|
243
|
-
- `cert`: A string or Buffer containing the certificate key of the server in PEM format. (Could be an array of certs). (Required)
|
|
244
|
-
- `ca`: An array of strings or Buffers of trusted certificates in PEM format. If this is omitted several well known "root" CAs will be used, like VeriSign. These are used to authorize connections.
|
|
245
|
-
- `crl` : Either a string or list of strings of PEM encoded CRLs (Certificate Revocation List)
|
|
246
|
-
- `ciphers`: A string describing the ciphers to use or exclude, separated by :. The default cipher suite is:
|
|
247
|
-
- `enableChunkedEncoding`: A boolean for controlling chunked transfer encoding in response. Some client (such as Windows 10's MDM enrollment SOAP client) is sensitive to transfer-encoding mode and can't accept chunked response. This option let user disable chunked transfer encoding for such a client. Default to `true` for backward compatibility.
|
|
248
|
-
|
|
249
266
|
``` javascript
|
|
250
267
|
var xml = require('fs').readFileSync('myservice.wsdl', 'utf8');
|
|
251
268
|
|
|
@@ -264,8 +281,7 @@ soap.listen(server, {
|
|
|
264
281
|
|
|
265
282
|
### Server Logging
|
|
266
283
|
|
|
267
|
-
If the `log` method is defined it will be called with 'received' and 'replied'
|
|
268
|
-
along with data.
|
|
284
|
+
If the `log` method is defined, it will be called with 'received' and 'replied' along with the data.
|
|
269
285
|
|
|
270
286
|
``` javascript
|
|
271
287
|
server = soap.listen(...)
|
|
@@ -493,24 +509,15 @@ An instance of `Client` is passed to the `soap.createClient` callback. It is us
|
|
|
493
509
|
|
|
494
510
|
### Client.setSecurity(security) - use the specified security protocol
|
|
495
511
|
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
``` javascript
|
|
499
|
-
client.MyFunction({name: 'value'}, function(err, result, rawResponse, soapHeader, rawRequest) {
|
|
500
|
-
// result is a javascript object
|
|
501
|
-
// rawResponse is the raw xml response string
|
|
502
|
-
// soapHeader is the response soap header as a javascript object
|
|
503
|
-
// rawRequest is the raw xml request string
|
|
504
|
-
})
|
|
505
|
-
```
|
|
512
|
+
See [Security](#security) for example usage.
|
|
506
513
|
|
|
507
|
-
|
|
514
|
+
### Client.*method*(args, callback, options) - call *method* on the SOAP service.
|
|
508
515
|
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
* `
|
|
512
|
-
|
|
513
|
-
|
|
516
|
+
- `args` (*Object*): Arguments that generate an XML document inside of the SOAP Body section.
|
|
517
|
+
- `callback` (*Function*)
|
|
518
|
+
- `options` (*Object*): Set options for the request module on WSDL requests. If using the default request module, see [Request Config | Axios Docs](https://axios-http.com/docs/req_config). Additional options supported by `node-soap` are documented below:
|
|
519
|
+
- `forever` (*boolean*): Enables keep-alive connections and pools them
|
|
520
|
+
- `attachments` (*Array*): array of attachment objects. This converts the request into MTOM: _headers['Content-Type']='multipart/related; type="application/xop+xml"; start= ... '_
|
|
514
521
|
```
|
|
515
522
|
[{
|
|
516
523
|
mimetype: content mimetype,
|
|
@@ -521,11 +528,27 @@ Interesting properties might be:
|
|
|
521
528
|
...
|
|
522
529
|
]
|
|
523
530
|
```
|
|
524
|
-
|
|
531
|
+
- `forceMTOM` (*boolean*): Send the request as MTOM even if you don't have attachments.
|
|
532
|
+
- `forceGzip` (*boolean*): Force transfer-encoding in gzip. (**Default:** `false`)
|
|
525
533
|
|
|
534
|
+
#### Example
|
|
535
|
+
|
|
536
|
+
``` javascript
|
|
537
|
+
client.MyFunction({name: 'value'}, function(err, result, rawResponse, soapHeader, rawRequest) {
|
|
538
|
+
// result is a javascript object
|
|
539
|
+
// rawResponse is the raw xml response string
|
|
540
|
+
// soapHeader is the response soap header as a javascript object
|
|
541
|
+
// rawRequest is the raw xml request string
|
|
542
|
+
})
|
|
543
|
+
```
|
|
526
544
|
|
|
527
545
|
### Client.*method*Async(args, options) - call *method* on the SOAP service.
|
|
528
546
|
|
|
547
|
+
- `args` (*Object*): Arguments that generate an XML document inside of the SOAP Body section.
|
|
548
|
+
- `options` (*Object*): See [Client.*method*(args, callback, options) - call *method* on the SOAP service.](#clientmethodargs-callback-options---call-method-on-the-soap-service) for a description.
|
|
549
|
+
|
|
550
|
+
#### Example
|
|
551
|
+
|
|
529
552
|
``` javascript
|
|
530
553
|
client.MyFunctionAsync({name: 'value'}).then((result) => {
|
|
531
554
|
// result is a javascript array containing result, rawResponse, soapheader, and rawRequest
|
|
@@ -536,25 +559,6 @@ Interesting properties might be:
|
|
|
536
559
|
})
|
|
537
560
|
```
|
|
538
561
|
|
|
539
|
-
The `args` argument allows you to supply arguments that generate an XML document inside of the SOAP Body section.
|
|
540
|
-
|
|
541
|
-
The `options` object is optional and is passed to the `request`-module.
|
|
542
|
-
Interesting properties might be:
|
|
543
|
-
* `timeout`: Timeout in milliseconds
|
|
544
|
-
* `forever`: Enables keep-alive connections and pools them
|
|
545
|
-
* `attachments`: array of attachment objects. This converts the request into MTOM: _headers['Content-Type']='multipart/related; type="application/xop+xml"; start= ... '_
|
|
546
|
-
```
|
|
547
|
-
[{
|
|
548
|
-
mimetype: content mimetype,
|
|
549
|
-
contentId: part id,
|
|
550
|
-
name: file name,
|
|
551
|
-
body: binary data
|
|
552
|
-
},
|
|
553
|
-
...
|
|
554
|
-
]
|
|
555
|
-
```
|
|
556
|
-
* `forceMTOM`: set to True if you want to send the request as MTOM even if you don't have attachments
|
|
557
|
-
|
|
558
562
|
##### Example with JSON for the `args`
|
|
559
563
|
The example above uses `{name: 'value'}` as the args. This may generate a SOAP messages such as:
|
|
560
564
|
|
|
@@ -586,6 +590,13 @@ You must specify all of the namespaces and namespace prefixes yourself. The ele
|
|
|
586
590
|
|
|
587
591
|
### Client.*service*.*port*.*method*(args, callback[, options[, extraHeaders]]) - call a *method* using a specific *service* and *port*
|
|
588
592
|
|
|
593
|
+
- `args` (*Object*): Arguments that generate an XML document inside of the SOAP Body section.
|
|
594
|
+
- `callback` (*Function*)
|
|
595
|
+
- `options` (*Object*): See [Client.*method*(args, callback, options) - call *method* on the SOAP service.](#clientmethodargs-callback-options---call-method-on-the-soap-service) for a description.
|
|
596
|
+
- `extraHeaders` (*Object*): Sets HTTP headers for the WSDL request.
|
|
597
|
+
|
|
598
|
+
#### Example
|
|
599
|
+
|
|
589
600
|
``` javascript
|
|
590
601
|
client.MyService.MyPort.MyFunction({name: 'value'}, function(err, result) {
|
|
591
602
|
// result is a javascript object
|
package/SECURITY.md
ADDED
package/lib/client.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ export declare class Client extends EventEmitter {
|
|
|
32
32
|
lastResponseHeaders?: IncomingHttpHeaders;
|
|
33
33
|
lastElapsedTime?: number;
|
|
34
34
|
lastResponseAttachments: IMTOMAttachments;
|
|
35
|
-
|
|
35
|
+
wsdl: WSDL;
|
|
36
36
|
private httpClient;
|
|
37
37
|
private soapHeaders;
|
|
38
38
|
private httpHeaders;
|
package/lib/client.js
CHANGED
|
@@ -323,18 +323,6 @@ var Client = /** @class */ (function (_super) {
|
|
|
323
323
|
headers.SOAPAction = '"' + soapAction + '"';
|
|
324
324
|
}
|
|
325
325
|
options = options || {};
|
|
326
|
-
// Add extra headers
|
|
327
|
-
if (this.httpHeaders === null) {
|
|
328
|
-
headers = {};
|
|
329
|
-
}
|
|
330
|
-
else {
|
|
331
|
-
for (var header in this.httpHeaders) {
|
|
332
|
-
headers[header] = this.httpHeaders[header];
|
|
333
|
-
}
|
|
334
|
-
for (var attr in extraHeaders) {
|
|
335
|
-
headers[attr] = extraHeaders[attr];
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
326
|
// Allow the security object to add headers
|
|
339
327
|
if (this.security && this.security.addHeaders) {
|
|
340
328
|
this.security.addHeaders(headers);
|
|
@@ -395,6 +383,18 @@ var Client = /** @class */ (function (_super) {
|
|
|
395
383
|
var eid = options.exchangeId || uuid_1.v4();
|
|
396
384
|
this.emit('message', message, eid);
|
|
397
385
|
this.emit('request', xml, eid);
|
|
386
|
+
// Add extra headers
|
|
387
|
+
if (this.httpHeaders === null) {
|
|
388
|
+
headers = {};
|
|
389
|
+
}
|
|
390
|
+
else {
|
|
391
|
+
for (var header in this.httpHeaders) {
|
|
392
|
+
headers[header] = this.httpHeaders[header];
|
|
393
|
+
}
|
|
394
|
+
for (var attr in extraHeaders) {
|
|
395
|
+
headers[attr] = extraHeaders[attr];
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
398
|
var tryJSONparse = function (body) {
|
|
399
399
|
try {
|
|
400
400
|
return JSON.parse(body);
|
|
@@ -469,11 +469,12 @@ var Client = /** @class */ (function (_super) {
|
|
|
469
469
|
}, onError_1);
|
|
470
470
|
return;
|
|
471
471
|
}
|
|
472
|
+
var startTime = Date.now();
|
|
472
473
|
return this.httpClient.request(location, xml, function (err, response, body) {
|
|
473
474
|
_this_1.lastResponse = body;
|
|
474
475
|
if (response) {
|
|
475
476
|
_this_1.lastResponseHeaders = response.headers;
|
|
476
|
-
_this_1.lastElapsedTime =
|
|
477
|
+
_this_1.lastElapsedTime = Date.now() - startTime;
|
|
477
478
|
_this_1.lastResponseAttachments = response.mtomResponseAttachments;
|
|
478
479
|
// Added mostly for testability, but possibly useful for debugging
|
|
479
480
|
_this_1.lastRequestHeaders = response.config && response.config.headers;
|
package/lib/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/lib/http.js
CHANGED
|
@@ -18,10 +18,11 @@ exports.__esModule = true;
|
|
|
18
18
|
exports.HttpClient = void 0;
|
|
19
19
|
var req = require("axios");
|
|
20
20
|
var axios_ntlm_1 = require("axios-ntlm");
|
|
21
|
-
var contentTypeParser = require("content-type-parser");
|
|
22
21
|
var debugBuilder = require("debug");
|
|
23
22
|
var url = require("url");
|
|
24
23
|
var uuid_1 = require("uuid");
|
|
24
|
+
var MIMEType = require("whatwg-mimetype");
|
|
25
|
+
var zlib_1 = require("zlib");
|
|
25
26
|
var utils_1 = require("./utils");
|
|
26
27
|
var debug = debugBuilder('node-soap');
|
|
27
28
|
var VERSION = require('../package.json').version;
|
|
@@ -77,9 +78,11 @@ var HttpClient = /** @class */ (function () {
|
|
|
77
78
|
url: curl.href,
|
|
78
79
|
method: method,
|
|
79
80
|
headers: headers,
|
|
80
|
-
validateStatus: null,
|
|
81
81
|
transformResponse: function (data) { return data; }
|
|
82
82
|
};
|
|
83
|
+
if (!exoptions.ntlm) {
|
|
84
|
+
options.validateStatus = null;
|
|
85
|
+
}
|
|
83
86
|
if (exoptions.forceMTOM || attachments.length > 0) {
|
|
84
87
|
var start = uuid_1.v4();
|
|
85
88
|
var action = null;
|
|
@@ -91,7 +94,8 @@ var HttpClient = /** @class */ (function () {
|
|
|
91
94
|
}
|
|
92
95
|
}
|
|
93
96
|
}
|
|
94
|
-
|
|
97
|
+
var boundary_1 = uuid_1.v4();
|
|
98
|
+
headers['Content-Type'] = 'multipart/related; type="application/xop+xml"; start="<' + start + '>"; type="text/xml"; boundary=' + boundary_1;
|
|
95
99
|
if (action) {
|
|
96
100
|
headers['Content-Type'] = headers['Content-Type'] + '; ' + action;
|
|
97
101
|
}
|
|
@@ -109,11 +113,28 @@ var HttpClient = /** @class */ (function () {
|
|
|
109
113
|
'body': attachment.body
|
|
110
114
|
});
|
|
111
115
|
});
|
|
112
|
-
|
|
116
|
+
options.data = "--" + boundary_1 + "\r\n";
|
|
117
|
+
var multipartCount_1 = 0;
|
|
118
|
+
multipart_1.forEach(function (part) {
|
|
119
|
+
Object.keys(part).forEach(function (key) {
|
|
120
|
+
if (key !== 'body') {
|
|
121
|
+
options.data += key + ": " + part[key] + "\r\n";
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
options.data += '\r\n';
|
|
125
|
+
options.data += part.body + "\r\n--" + boundary_1 + (multipartCount_1 === multipart_1.length - 1 ? '--' : '') + "\r\n";
|
|
126
|
+
multipartCount_1++;
|
|
127
|
+
});
|
|
113
128
|
}
|
|
114
129
|
else {
|
|
115
130
|
options.data = data;
|
|
116
131
|
}
|
|
132
|
+
if (exoptions.forceGzip) {
|
|
133
|
+
options.decompress = true;
|
|
134
|
+
options.data = zlib_1.gzipSync(options.data);
|
|
135
|
+
options.headers['Accept-Encoding'] = 'gzip,deflate';
|
|
136
|
+
options.headers['Content-Encoding'] = 'gzip';
|
|
137
|
+
}
|
|
117
138
|
for (var attr in newExoptions) {
|
|
118
139
|
if (mergeOptions.indexOf(attr) !== -1) {
|
|
119
140
|
for (var header in exoptions[attr]) {
|
|
@@ -154,7 +175,8 @@ var HttpClient = /** @class */ (function () {
|
|
|
154
175
|
var ntlmReq = axios_ntlm_1.NtlmClient({
|
|
155
176
|
username: exoptions.username,
|
|
156
177
|
password: exoptions.password,
|
|
157
|
-
|
|
178
|
+
workstation: exoptions.workstation || '',
|
|
179
|
+
domain: exoptions.domain || ''
|
|
158
180
|
});
|
|
159
181
|
req = ntlmReq(options);
|
|
160
182
|
}
|
|
@@ -172,9 +194,9 @@ var HttpClient = /** @class */ (function () {
|
|
|
172
194
|
var isMultipartResp = res.headers['content-type'] && res.headers['content-type'].toLowerCase().indexOf('multipart/related') > -1;
|
|
173
195
|
if (isMultipartResp) {
|
|
174
196
|
var boundary = void 0;
|
|
175
|
-
var parsedContentType =
|
|
176
|
-
if (parsedContentType
|
|
177
|
-
boundary =
|
|
197
|
+
var parsedContentType = MIMEType.parse(res.headers['content-type']);
|
|
198
|
+
if (parsedContentType) {
|
|
199
|
+
boundary = parsedContentType.parameters.get('boundary');
|
|
178
200
|
}
|
|
179
201
|
if (!boundary) {
|
|
180
202
|
return callback(new Error('Missing boundary from content-type'));
|
package/lib/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;AAEH,2BAA6B;AAC7B,yCAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|