[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Help with new method?



Alvin,

My WSDL2RPG utility does authentication likes this:


     D authType        S             14A   inz varying
     D basic           S               N   inz
     D digest          S               N   inz
     D realm           S            124A   inz
     D numAttempts     S             10I 0 inz
     D userid          S             50A   inz varying
     D password        S             50A   inz varying



numAttempts = 0;

ou (err <> HTTP_NDAUTH);
   rc = http_url_post_raw2(
      g_url
      : hInpStream
      : %paddr('WSDL2R87_ManagedMemoryDataSource_InputStream_read')
      : ManagedMemoryDataSource_getSize(hDataSource)
      : 0
      : %paddr('HTTP_receiveResponse')
      : HTTP_TIMEOUT
      : HTTP_USERAGENT
      : '');

   // The first time we request a document that requires user/password
   // it will return a HTTP_NDAUTH error.
   if (rc <> 1);
      http_error(err);
      if (err = HTTP_NDAUTH or err = HTTP_PXNDAUTH);
         if (g_getLoginData = *NULL);
            leave;
         endif;

         numAttempts = numAttempts + 1;

         if (err = HTTP_NDAUTH);
            http_getauth(basic: digest: realm);
            authType = WSDL_AUTH_TYPE_HTTP;
         else;
            http_proxy_getauth(basic: realm);
            authType = WSDL_AUTH_TYPE_PROXY;
         endif;

         rc2 = getLoginData(authType: realm
                            : numAttempts: userid: password);
         if (rc2 <> 1);
            userid = '';
            password = '';
            leave;
         endif;

         if (err = HTTP_NDAUTH);
            if (digest);
               http_setAuth(HTTP_AUTH_MD5_DIGEST
                            : userid: password);
            else;
               http_setAuth(HTTP_AUTH_BASIC
                            : userid: password);
            endif;
         else;
            if (digest);
               http_proxy_setAuth(HTTP_AUTH_MD5_DIGEST
                                  : userid: password);
            else;
               http_proxy_setAuth(HTTP_AUTH_BASIC
                                  : userid: password);
            endif;
         endif;

         userid = '';
         password = '';
      endif;
   else;
      err = 0;
   endif;
enddo;



Regards,

Thomas



ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx schrieb am 05.05.2010 15:53:43:

> Von:
> 
> alvins@xxxxxxxxxxxxx
> 
> An:
> 
> ftpapi@xxxxxxxxxxxxxxxxxxxxxx
> 
> Datum:
> 
> 05.05.2010 16:03
> 
> Betreff:
> 
> RE: Help with new method?
> 
> Gesendet von:
> 
> ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
> 
> Thomas,
> Thanks for the simple explanation of the FALSE parm.  You are correct 
that
> this example code is VBScript.  However, rather than from shipwire, this 
is
> a nearly identical example from the Con-way Freight Rating tools. 
Examples
> are also available in Cold Fusion, Java, JSP, Perl, PHP and a few 
others.
> 
> I'm still a bit hazy regarding exactly which functions (procedures) to 
call
> from HTTPAPI.  From using Example7 to get a successful login, it appears
> that we must begin with http_setauth.  We are unsure exactly which 
method(s)
> to use after that.  We do want to parse the XML reply.  Can you suggest
> which modules to call or which HTTPAPI example program best demonstrates 
the
> necessary steps to interact with this company's offering?
> 
> Alvin
> Alvin Strasburger
> Printgear Sportswear
> Phone    803-744-2310
> Toll Free 800-763-7763
> mailto:alvins@xxxxxxxxxxxxx
> www.printgear.com
> 
> -----Original Message-----
> From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of
> thomas.raddatz@xxxxxx
> Sent: Wednesday, May 05, 2010 2:27 AM
> To: ftpapi@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Re: Help with new method?
> 
> 
> Alvin and Scott,
> 
> I assume that the programming language of the example code is VBScript 
and
> the the complete example is taken from here:
> 
>    http://www.shipwire.com/exec/XML_Order_ASP_sample_code.htm
> 
> A description of the "open" methof of "ServerXMLHTTP" can be found here:
> 
>    http://msdn.microsoft.com/en-us/library/ms763809%28VS.85%29.aspx
> 
> Regading to that description the "false" indicates a synchronous call
> which is exactly what HTTP API does.
> 
> <quote>
> bAsync(optional)
>    Boolean. Indicator as to whether the call is asynchronous.
>    The default is False (the call does not return immediately).
> </quote>
> 
> Thomas.
> 
> 
> ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx schrieb am 05.05.2010 06:59:46:
> 
> > Von:
> >
> > sk@xxxxxxxxxxxxxxxx
> >
> > An:
> >
> > ftpapi@xxxxxxxxxxxxxxxxxxxxxx
> >
> > Datum:
> >
> > 05.05.2010 07:04
> >
> > Betreff:
> >
> > Re: Help with new method?
> >
> > Gesendet von:
> >
> > ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
> >
> > Hi Alvin,
> >
> > Which programming language was that code written in?  I don't 
recognize
> > the syntax.  You'll need to look up the parameters for the 'open' 
method
> 
> > of the "Microsoft.XMLHTTP" class in whatever programming language that
> > is...  this'll tell you what 'false' does.
> >
> > Good luck!
> >
> >
> > Alvin Strasburger wrote:
> > >    We have now been successful with posting XML and SOAP requests 
and
> > >    parsing the replies as well as using the WEBFORMS tool to send
> simple
> > >    strings.  We have tried to learn as much as we could in the
> process.
> > >    Unfortunately, we have much more knowledge about RPG programming
> and
> > >    business logic than we have about web programming.
> > >
> > >
> > >     We are in the final stages of integrating freight rating into 
our
> > >    order entry system and do not quite understand what is required 
for
> > >    one specific carrier's system.  We have found the following 
excerpt
> > >    from an example in their documentation and help translating it to
> the
> > >    "HTTPAPI language".
> > >
> > >
> > > set httpConn = Server.CreateObject("Microsoft.XMLHTTP")
> > > 'or alternately depending on what is installed on your server:
> > > 'set httpConn = Server.CreateObject("MSXML2.ServerXMLHTTP")
> > > 'or whatever parser you have installed
> > >
> > > ' open synchronous connection to X-ShipmentStatus
> > > httpConn.open "POST",xxxxxxXmlUrl,false,username,password
> > >
> > >
> > > 'set post data type, and post data
> > > httpConn.setRequestHeader "Content-type","application/x-www-form-
> > urlencoded"
> > > httpConn.Send requestType & "=" & xmlRequest
> > >
> > >
> > >    We know that xxxxxXmlUrl is a constant containing the URL and 
that
> > >    xmlRequest is a constant containing the XML of our request.  We
> also
> > >    know the ID and Password.  We also know that we need to send the 
ID
> > >    and PW first in order to log in.  We are not sure what the
> parameter
> > >    false is for.  It is not documented as a constant.
> > >
> > >
> > >    Can someone help us by listing the specific functions we need to
> call
> > >    and in what order?
> > >
> > >
> > >    Thanks,
> > >
> > >    Alvin
> > >
> > >    Alvin Strasburger
> > >
> > >    Printgear Sportswear
> > >
> > >    Phone    803-744-2310
> > >
> > >    Toll Free 800-763-7763
> > >
> > >    [1]mailto:alvins@xxxxxxxxxxxxx
> > >
> > >    [2]www.printgear.com
> > >
> > > References
> > >
> > >    1. mailto:alvins@xxxxxxxxxxxxx
> > >    2. http://www.printgear.com/
> > >
> > >
> > >
> > >
> ------------------------------------------------------------------------
> > >
> > >
> -----------------------------------------------------------------------
> > > This is the FTPAPI mailing list.  To unsubscribe, please go to:
> > > http://www.scottklement.com/mailman/listinfo/ftpapi
> > >
> -----------------------------------------------------------------------
> >
> > 
-----------------------------------------------------------------------
> > This is the FTPAPI mailing list.  To unsubscribe, please go to:
> > http://www.scottklement.com/mailman/listinfo/ftpapi
> > 
-----------------------------------------------------------------------
> >
> 
> 
> --
> IMPORTANT NOTICE:
> This email is confidential, may be legally privileged, and is for the
> intended recipient only. Access, disclosure, copying, distribution, or
> reliance on any of it by anyone else is prohibited and may be a criminal
> offence. Please delete if obtained in error and email confirmation to 
the
> sender.
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------
> 
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 9.0.814 / Virus Database: 271.1.1/2854 - Release Date: 05/04/10
> 14:27:00
> 
> -----------------------------------------------------------------------
> This is the FTPAPI mailing list.  To unsubscribe, please go to:
> http://www.scottklement.com/mailman/listinfo/ftpapi
> -----------------------------------------------------------------------
> 


--
IMPORTANT NOTICE:
This email is confidential, may be legally privileged, and is for the
intended recipient only. Access, disclosure, copying, distribution, or
reliance on any of it by anyone else is prohibited and may be a criminal
offence. Please delete if obtained in error and email confirmation to the sender.
-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------