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

Re: http_header



Ahhh, I see what's going. on. Yes, it looks like HTTPAPI will need to be modified. I don't remember why I'm stopping this early on a 204 (this was written in 2001) but I suspect I was thinking something like "if there's no response, no point in taking the time to parse the headers"

I'll make some changes here and let you know what to try next.


On 1/21/2015 8:47 AM, James Viney wrote:
Okay, it's because in parse_resp_chain there is a select statement picking up the 204 return code (204=No Content).

What's the best way round this?  Is there an easy way to accept the 204 or do I have to resort to amending the code?

Thanks,

James

-----Original Message-----
From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of James Viney
Sent: 21 January 2015 14:30
To: 'HTTPAPI and FTPAPI Projects'
Subject: RE: http_header

Hi Thomas,

Funnily enough that's exactly what I'm doing now!  I'll let you know what I find.

Thanks,

James

-----Original Message-----
From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Thomas Raddatz
Sent: 21 January 2015 14:26
To: 'HTTPAPI and FTPAPI Projects'
Subject: Re: http_header

James,

I suggest to start the debugger for service program HTTPAPIR4, module HTTPAPIR4 and procedure do_oper(). The "parse header" callback is called after HTTPAPI called the regular parse header procedure. So when you cannot get the "content-location" header without your callback, then you most likely cannot get it the callback either.

I am not sure, what exactly happens. But I assume that the problem is in do_oper() or, more likely, in parse_response_chain(). Either parse_response_chain() is not called or early exited.

HTTPAPI calls header_parse() and optionally the callback procedure at the end of parse_response_chain(). It might be worth a try to see what happens in parse_response_chain().

Thomas.

-----Ursprüngliche Nachricht-----
Von: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] Im Auftrag von James Viney
Gesendet: Mittwoch, 21. Januar 2015 10:15
An: 'HTTPAPI and FTPAPI Projects'
Betreff: RE: http_header

I've tried with and without colon, and all upper and all lower case but, when I debug, the value of wkNewLoc is always blank.

I've also tried using the http_xproc(HTTP_POINT_PARSE_HEADER:%paddr('READ_HDR')), but for some reason it never escapes to my Read_Hdr subprocedure.


-----Original Message-----
From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Scott Klement
Sent: 21 January 2015 02:24
To: HTTPAPI and FTPAPI Projects
Subject: Re: http_header


There should be no colon...

       wkNewLoc = http_header('content-location');

-SK


On 1/20/2015 12:59 PM, Mike Krebs wrote:
Maybe you are looking for
wkNewLoc = http_header('Content-Location:'); ?

-----Original Message-----
From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
[mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of James
Viney
Sent: Tuesday, January 20, 2015 4:21 AM
To: 'ftpapi@xxxxxxxxxxxxxxxxxxxxxx'
Subject: http_header

Hello,

I'm having a little trouble with the http_header function, and just wanted to check that I'm using it correctly.  I'm currently using v1.23, but will upgrade in case this might be the issue.

I've been using the HTTP APIs successfully for years with SOAP webservices, but I now have to start consuming a RESTful webervice.  The service in question appears quite simple where I would POST some data that needs checking, and the service will then pass back the URL that I would need to run a subsequent GET against to receive the results.  The URL is passed back in the header however, and I just can't seem to pick it up.

  From the debug log, it appears that the initial post is successful and I can see the URL begin returned:

Protocol Used: TLS Version 1
http_persist_post(): entered
http_long_ParseURL(): entered
do_post(): entered
POST /query/EmailValidate/1.0/ HTTP/1.1
Host: api.experianmarketingservices.com
User-Agent: http-api/1.23
Content-Type: text/xml
Expect: 100-continue
Content-Length: 36
Auth-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxx


recvresp(): entered
HTTP/1.1 100 Continue


SetError() #13: HTTP/1.1 100 Continue
senddoc(): entered
<Email>xxxxxxxxxxxx</Email>

recvresp(): entered
HTTP/1.1 204 No Content
Cache-Control: no-store, must-revalidate, no-cache, max-age=0
Pragma: no-cache
Content-Length: 0
Content-Location:
https://api.experianmarketingservices.com/result/EmailValidate/1.0/xxx
xxxxxxxxxxxxxxxxx
Expires: Mon, 01 Jan 0001 00:00:00 GMT
Date: Tue, 20 Jan 2015 10:06:54 GMT


SetError() #13: HTTP/1.1 204 No Content
http_close(): entered



I've altered some of the values to xxxxx.  TheURL I need to pick up is under "Content-Location", so in my code directly after the http_url_post I've used the line wkNewLoc = http_header('Content-Length'); however wkNewLoc is blank.  I've tried with and without the colon after content-length but neither work.

The return code is "204" as there is no content to be returned (so my response file is blank) - would this affect the http_header api?  Having searched the archive I've read that a Content-Length of 0 shouldn't affect this however.

Any help would be very welcome.

Thanks,

James


James Viney
IT Development Team Leader
Ageas Insurance Limited
IT Department
Tel: +44 (0)23 8031 3324
james.viney@xxxxxxxxxxx<mailto:james.viney@xxxxxxxxxxx>
Ageas House, Hampshire Corporate Park, Templars Way, Eastleigh,
Hampshire, SO53 3YA England

www.ageas.co.uk<http://www.fortisinsurance.co.uk/>


________________________________
Proud partner of The Ageas Bowl and the Ageas Salisbury International Arts Festival.

Registered Address: Ageas House, Hampshire Corporate Park, Templars
Way, Eastleigh, Hampshire, SO53 3YA Registered Number: 354568 England

Authorised by the Prudential Regulation Authority and regulated by the
Financial Conduct Authority and the Prudential Regulation Authority

This e-mail together with any attachments are intended for the addressee only and may be private and confidential. If you are not the intended recipient, or the person responsible for delivering it to the intended recipient, you must not open any attachments, or copy, disclose, distribute, retain or use this e-mail, including any attachments, in any way whatsoever; please return it to us immediately using the reply facility on e-mail.

Consider the environment and think before you print this email.
----------------------------------------------------------------------
- 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
-----------------------------------------------------------------------


-----------------------------------------------------------------------
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
-----------------------------------------------------------------------


-----------------------------------------------------------------------
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
-----------------------------------------------------------------------


-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------