diff --git a/CryptoExchange.Net/Authentication/AuthenticationProvider.cs b/CryptoExchange.Net/Authentication/AuthenticationProvider.cs
index 8739fed..21857b1 100644
--- a/CryptoExchange.Net/Authentication/AuthenticationProvider.cs
+++ b/CryptoExchange.Net/Authentication/AuthenticationProvider.cs
@@ -1,4 +1,5 @@
-using System.Collections.Generic;
+using CryptoExchange.Net.Objects;
+using System.Collections.Generic;
using System.Net.Http;
namespace CryptoExchange.Net.Authentication
@@ -29,8 +30,11 @@ namespace CryptoExchange.Net.Authentication
///
///
///
+ ///
+ ///
///
- public virtual Dictionary AddAuthenticationToParameters(string uri, HttpMethod method, Dictionary parameters, bool signed)
+ public virtual Dictionary AddAuthenticationToParameters(string uri, HttpMethod method, Dictionary parameters, bool signed,
+ PostParameters postParameterPosition, ArrayParametersSerialization arraySerialization)
{
return parameters;
}
@@ -42,8 +46,11 @@ namespace CryptoExchange.Net.Authentication
///
///
///
+ ///
+ ///
///
- public virtual Dictionary AddAuthenticationToHeaders(string uri, HttpMethod method, Dictionary parameters, bool signed)
+ public virtual Dictionary AddAuthenticationToHeaders(string uri, HttpMethod method, Dictionary parameters, bool signed,
+ PostParameters postParameterPosition, ArrayParametersSerialization arraySerialization)
{
return new Dictionary();
}
diff --git a/CryptoExchange.Net/CryptoExchange.Net.xml b/CryptoExchange.Net/CryptoExchange.Net.xml
index b6b143d..fae41b2 100644
--- a/CryptoExchange.Net/CryptoExchange.Net.xml
+++ b/CryptoExchange.Net/CryptoExchange.Net.xml
@@ -97,7 +97,7 @@
-
+
Add authentication to the parameter list
@@ -105,9 +105,11 @@
+
+
-
+
Add authentication to the header dictionary
@@ -115,6 +117,8 @@
+
+
@@ -2142,7 +2146,7 @@
The roundtrip time of the ping request
-
+
Execute a request
@@ -2152,7 +2156,9 @@
Cancellation token
The parameters of the request
Whether or not the request should be authenticated
- Whether or not the resulting object should be checked for missing properties in the mapping (only outputs if log verbosity is Debug)
+ Whether or not the resulting object should be checked for missing properties in the mapping (only outputs if log verbosity is Debug)
+ Where the post parameters should be placed
+ How array paramters should be serialized
@@ -2171,7 +2177,7 @@
Received data
Null if not an error, Error otherwise
-
+
Creates a request object
@@ -2179,6 +2185,8 @@
The method of the request
The parameters of the request
Whether or not the request should be authenticated
+ Where the post parameters should be placed
+ How array paramters should be serialized
@@ -2909,148 +2917,5 @@
-
-
- Specifies that is allowed as an input even if the
- corresponding type disallows it.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Specifies that is disallowed as an input even if the
- corresponding type allows it.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Specifies that a method that will never return under any circumstance.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Specifies that the method will not return if the associated
- parameter is passed the specified value.
-
-
-
-
- Gets the condition parameter value.
- Code after the method is considered unreachable by diagnostics if the argument
- to the associated parameter matches this value.
-
-
-
-
- Initializes a new instance of the
- class with the specified parameter value.
-
-
- The condition parameter value.
- Code after the method is considered unreachable by diagnostics if the argument
- to the associated parameter matches this value.
-
-
-
-
- Specifies that an output may be even if the
- corresponding type disallows it.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Specifies that when a method returns ,
- the parameter may be even if the corresponding type disallows it.
-
-
-
-
- Gets the return value condition.
- If the method returns this value, the associated parameter may be .
-
-
-
-
- Initializes the attribute with the specified return value condition.
-
-
- The return value condition.
- If the method returns this value, the associated parameter may be .
-
-
-
-
- Specifies that an output is not even if the
- corresponding type allows it.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Specifies that the output will be non- if the
- named parameter is non-.
-
-
-
-
- Gets the associated parameter name.
- The output will be non- if the argument to the
- parameter specified is non-.
-
-
-
-
- Initializes the attribute with the associated parameter name.
-
-
- The associated parameter name.
- The output will be non- if the argument to the
- parameter specified is non-.
-
-
-
-
- Specifies that when a method returns ,
- the parameter will not be even if the corresponding type allows it.
-
-
-
-
- Gets the return value condition.
- If the method returns this value, the associated parameter will not be .
-
-
-
-
- Initializes the attribute with the specified return value condition.
-
-
- The return value condition.
- If the method returns this value, the associated parameter will not be .
-
-
diff --git a/CryptoExchange.Net/ExtensionMethods.cs b/CryptoExchange.Net/ExtensionMethods.cs
index 1090cf9..1ac235b 100644
--- a/CryptoExchange.Net/ExtensionMethods.cs
+++ b/CryptoExchange.Net/ExtensionMethods.cs
@@ -7,6 +7,7 @@ using System.Runtime.InteropServices;
using System.Security;
using System.Threading;
using System.Threading.Tasks;
+using System.Web;
using CryptoExchange.Net.Logging;
using CryptoExchange.Net.Objects;
using Newtonsoft.Json;
@@ -79,16 +80,16 @@ namespace CryptoExchange.Net
foreach (var arrayEntry in arraysParameters)
{
if(serializationType == ArrayParametersSerialization.Array)
- uriString += $"{string.Join("&", ((object[])(urlEncodeValues ? WebUtility.UrlEncode(arrayEntry.Value.ToString()) : arrayEntry.Value)).Select(v => $"{arrayEntry.Key}[]={v}"))}&";
+ uriString += $"{string.Join("&", ((object[])(urlEncodeValues ? Uri.EscapeDataString(arrayEntry.Value.ToString()) : arrayEntry.Value)).Select(v => $"{arrayEntry.Key}[]={v}"))}&";
else
{
var array = (Array)arrayEntry.Value;
- uriString += string.Join("&", array.OfType