[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: HTTPAPI http_url_get
Hi John,
You can use http_url_get_raw as shown below:
rc = http_url_get_raw(url: fd: %paddr(HTTP_RAW_SAVE));
� Where the HTTP_RAW_SAVE procedure looks like:
�*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++� �* � This is called by the HTTP_url_get_raw() API each time � � �� �* � data is received from the HTTP server. � � � � � � � � � � �� �* � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �* � We use it to show the user how many bytes have been � � � � � �* � received, and then we write the received data to disk. � � �� �* � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �* � Parameters: � � � � � � � � � � � � � � � � � � � � � � � � � �* � � � �peFD = number that we passed to HTTP_url_get_raw().
� �� �* � � � � � � � (We use the file descriptor that we got
when � �� �* � � � � � � � �we opened the stream file that we're
saving to)� �* � � �peData = pointer to the data that was received from http
� �* � � � � � � � �server. � � � � � � � � � � � � � � � � � � � �� �* � � � peLen = length of data received � � � � � � � � � � � � � �* � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �* � we return the length we received from HTTPAPI if successful
� �* � � or -1 if we can't write the data to disk. � � � � � � � � � �*++++++++++++++++++++++++++++++++++++++++++++++++++++++
P http_raw_save � B � � � � � � � � � � � � � � � � � �� D http_raw_save � PI � � � � � �10I 0 � � � � � � � � �� D � peFD � � � � � � � � � � � �10I 0 value � � � � � �� D � peData � � � � � � � � � � � �* � value � � � � � �� D � peLen � � � � � � � � � � � 10I 0 value � � � � � �� d � � � � � � � � � � � � � � � � � � � � � � � � � � �� d peDta � � � � � s � � � � �32000a � based(peData) � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � �� D QMHSNDPM � � � �PR � � � � � � � � �ExtPgm('QMHSNDPM')
D � MessageID � � � � � � � � � �7A � Const � � � � � �� D � QualMsgF � � � � � � � � � �20A � Const � � � � � �� D � MsgData � � � � � � � � � �256A � Const � � � � � �� D � MsgDtaLen � � � � � � � � � 10I 0 Const � � � � � �� D � MsgType � � � � � � � � � � 10A � Const � � � � � �� D � CallStkEnt � � � � � � � � �10A � Const � � � � � �� D � CallStkCnt � � � � � � � � �10I 0 Const � � � � � �� D � MessageKey � � � � � � � � � 4A � � � � � � � � � � � � � � � D � ErrorCode � � � � � � � �32766A � options(*varsize) � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � D dsEC � � � � � �DS � � � � � � � � � � � � � � � � � � � � � �� D �dsECBytesP � � � � � � 1 � � �4I 0 inz(0) � � � � � � � � � �� D �dsECBytesA � � � � � � 5 � � �8I 0 inz(0) � � � � � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � D wwMsgKey � � � �S � � � � � � �4A � � � � � � � � � � � � � � � D wwText � � � � �s � � � � � �100A � varying � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � c � � � � � � � � � eval � � �Bytes = Bytes + peLen � � � � � � � c � � � � � � � � � eval � � �wwText =
%trim(%editc(Bytes:'P')) +
c � � � � � � � � � � � � � � � �' bytes received'
� � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � c � � � � � � � � � if � � � �peFd <> -1 � � � � � � � � � � � �� c � � � � � � � � � if � � � �write(peFd: peData:
peLen) < 1 � �� c � � � � � � � � � return � �-1 � � � � � � � � � � � � � � � �� c � � � � � � � � � endif � � � � � � � � � � � � � � � � � � � c � � � � � � � � � else � � � � � � � � � � � � � � � � � � �� c � � � � � � � � � eval � � �rcvDta = rcvDta + � � � � � � � � c � � � � � � � � � � � � � � � � � � �%subst(peDta: 1: peLen)� c � � � � � � � � � endif � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � c � � � � � � � � � return � �peLen � � � � � � � � � � � � � � P � � � � � � � � E � � � � � � � � � � � � � � � � � � � � � �
On Thu, Oct 27, 2016 at 7:13 AM, John Long
<[1]John.Long@xxxxxxxxxxxxxx> wrote:
� �Hi All,
� �I need to receive a CSV file that is generated when I issue� a
HTTP
� �GET,� I know I can use http_url_get specifying the URL and
file name in
� �the IFS,
� �Is there a way that I can get the file straight into memory and
� �manipulate it there rather than having it automatically stored
in the
� �IFS and then accessing from there?
� �Thanks in advance
� �John
� �_____________________________________________________________
T.J.
� �MORRIS LTD-CONFIDENTIALITY NOTICE This e-mail and its contents,
� �together with any attachments, are confidential to the sender
and the
� �intended recipient(s). If you are not the intended recipient or
agent
� �responsible for delivery to the intended recipient any
unauthorised
� �storage, use, disclosure, copying, distribution or
dissemination of
� �this e-mail or any part thereof is strictly prohibited and may
be
� �illegal. If you receive this e-mail in error please advise us
by
� �telephone on [2]+44(0)151 530 2920 and delete and destroy this
e-mail and
� �any attachments and any copies thereof from your system
immediately.
� �Any views or opinions expressed in this e-mail are solely those
of the
� �sender and do not necessarily represent those of T J Morris
Ltd.
� �Although any attachments to this e-mail have been checked for
viruses
� �we make no representation and give no warranty as to the
absence of
� �viruses and you should scan this e-mail and attachments for
viruses.
� �___________________________________________________________
------------------------------------------------------------
-----------
This is the FTPAPI mailing list.� To unsubscribe, please go to:
[3]http://www.scottklement.com/mailman/listinfo/ftpapi
------------------------------------------------------------
-----------
--
Chris Edmondson
509.670.6817
References
1. mailto:John.Long@xxxxxxxxxxxxxx
2. tel:%2B44%280%29151%20530%202920
3. 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
-----------------------------------------------------------------------