Hi,
I'm trying to call a webservice (POST input JSON) in X , below is my code and I'm not sure what is wrong/missing:
static void Job269(Args _args)
{
System.Net.WebHeaderCollection headers = new System.Net.WebHeaderCollection();
System.IO.Stream streamstr,responsestr;
System.IO.StreamWriter streamWriter;
System.Net.WebResponse webresponse;
System.IO.StreamReader reader;
System.Exception ex , ex2, webexception;
System.Net.WebRequest webreq = System.Net.WebRequest::Create("url");
str json = @'{"items":[
{"product_sku":"SKU1","quantity":"15"},
{"product_sku":"SKU2","quantity":"3"} ]}';
headers.Add('Authorization: bearer AuthorizationCODE');
webreq.set_Headers(headers);
webreq.set_Timeout(100000);
webreq.set_Method("POST");
webreq.set_ContentType("application/json");
streamstr = webreq.GetRequestStream();
streamWriter = new System.IO.StreamWriter(streamstr);
streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
streamWriter.Dispose();
try
{
//info('Line 42');
webresponse = webreq.GetResponse();
responsestr = webresponse.GetResponseStream();
reader = new System.IO.StreamReader(responsestr);
info(reader.ReadToEnd());
}
/*
catch(Exception::CLRError)
{
ex = ClrInterop::getLastException();
//ex2 = CLRInterop::getLastException().GetBaseException();
if (ex != null)
{
ex = ex.get_InnerException();
if (ex != null)
error(ex.ToString());
}
}*/
catch (Exception::CLRError)
{
ex = CLRInterop::getLastException();
info(ex.ToString());
if (ex != null)
{
ex = ex.get_InnerException();
if ((ex != null) && (ex is System.Net.WebException))
info(ex.ToString());
}
}
}
Yet I'm getting the following error (not sure why):
Moreover, following is the call of the webservice from Postman:
Any idea what's the error or how to call such services with authorization?