K 
		
				
			
		KuKeC
Guest
I have to send some data to API but autorization to this api is thru cookie. So for sending data I have to send my username and password and in response I get cookie and in response body I get element "sessionID" which containts string value for that cookie. In every next API request I need to use that cookie (or create it with stored string value from first API request). How to make/integrate cookie functionality inside my existing procedures for API requests? If I do requests using Postman application, then it automaticly saves cookie from first request and use it on every next request.
So is solution for my problem :
My procedure for sending GET request is below.
	
	
	
		
Found some C# code for cookies but don't know how to integrate that into my procedure.
	
	
	
		
Thanks in advance
Continue reading...
				
			So is solution for my problem :
- to save a cookie and use it for every next request?
 - to save string value and create cookie for every next request?
 - to store cookie into session and use cookie from session?
 - something else I didn't thought of?
 
My procedure for sending GET request is below.
		Code:
	
	USING System.Xml.* FROM ASSEMBLY.
USING System.Net.* FROM ASSEMBLY.
USING System.Collections.Specialized.* FROM ASSEMBLY.
ROUTINE-LEVEL ON ERROR UNDO, THROW.
/* ***************************  Definitions  ************************** */
DEFINE INPUT  PARAMETER cLink       AS CHARACTER NO-UNDO.
DEFINE INPUT  PARAMETER cUser       AS CHARACTER NO-UNDO.
DEFINE INPUT  PARAMETER cPass       AS CHARACTER NO-UNDO.
DEFINE OUTPUT PARAMETER lcResponse  AS LONGCHAR  NO-UNDO.
DEFINE VARIABLE wcClient        AS System.Net.WebClient                               NO-UNDO.
DEFINE VARIABLE nvValues        AS System.Collections.Specialized.NameValueCollection NO-UNDO.
DEFINE VARIABLE whcResponse     AS System.Net.WebHeaderCollection                     NO-UNDO.
DEFINE VARIABLE rsResponse      AS "System.Byte[]"                                    NO-UNDO.
DEFINE VARIABLE cRespHeader     AS CHARACTER                                          NO-UNDO.
DEFINE VARIABLE wpProxy         AS System.Net.WebProxy                                NO-UNDO.
/* ***************************  Main Block  *************************** */
wcClient = NEW System.Net.WebClient().
nvValues = NEW System.Collections.Specialized.NameValueCollection(). 
ASSIGN 
    nvValues["username"]    = cUser
    nvValues["password"]    = cPass 
    .
rsResponse = wcClient:UploadValues(cLink, nvValues).
lcResponse = System.Text.Encoding:Default:GetString(rsResponse).
cRespHeader = System.Text.Encoding:Default:GetString(rsResponse).
DELETE OBJECT nvValues.
DELETE OBJECT rsResponse.
DELETE OBJECT wcClient.
	Found some C# code for cookies but don't know how to integrate that into my procedure.
		Code:
	
	 CookieContainer cookieContainer = new CookieContainer();
 System.Net.Cookie userNameCookie = new System.Net.Cookie("user", "username");
 System.Net.Cookie passwordCookie = new System.Net.Cookie("password", "9848jf7s7ejhd");
 cookieContainer.Add(userNameCookie);
 cookieContainer.Add(passwordCookie);
 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(produkt);
 request.CookieContainer = cookieContainer;
	Thanks in advance
Continue reading...