|
I think I found it here (
https://ibmsystemsmag.com/Power-Systems/02/2012/rest-web-services-with-rpg
).
Thanks for putting me on the right path Charles.
Rob
On Mon, Jul 27, 2020 at 12:27 PM Robert Rogerson <rogersonra@xxxxxxxxx>
wrote:
Charles, if I add *fixed then does this stop the need to append x'00' tohttps://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_73/rzaie/rzaiepdf.pdf
the end of cmdstr when calling the api?
I checked in the config file for my HTTP server instance and could not
find %%MIXED%%. So I did a Google search and did find . Electronic
business and Web serving IBM HTTP Server for i (
).
It mentionsresponseLen
CGIConvMode:
Module: mod_cgi
Syntax: CGIConvMode mode
One of the modes listed is %%MIXED so I'm thinking this may be what you
were referring to. But this also got me thinking, from how I understand
this, CGIConvMode is in module the module mod_cgi which is not loaded
(LoadModule cgi_mod?).
Should I be loading cgi_mod?
OK, while writing this I just saw another post from you that I was doing
it wrong. Thanks
In the past I did try to find how to access the environment variable
QUERY_STRING but the only reference I could find to access it was using
the QzhbCgiParse api which you pointed out is wrong.
So how should I be accessing QUERY_STRING? (I don't mind if you just
point me to a document but I couldn't find one.
Thanks,
Rob
On Mon, Jul 27, 2020 at 10:26 AM Charles Wilt <charles.wilt@xxxxxxxxx>
wrote:
Looks ok, though you should be using option(*trim:*string) to
automatically
trim and null terminate the cmdStr parm.
Did you see the note in the docs?
This API does not work with the %%MIXED%% CGI input mode.
Are you by chance using mixed? (would be in your Apache config)
Charles
On Mon, Jul 27, 2020 at 6:21 AM Robert Rogerson <rogersonra@xxxxxxxxx>
wrote:
This is posted to both the RPG and the Midrange-L mailings lists.the
I'm using IWS to call a REST API. I'm using QzhbCgiParse to retrieve
passed parameter(s) from the QUERY_STRING. When I call the API all Isee
is a 1 page dump in QPSRVDMP in QEZDEBUG with the user data FFDC but
can't see anything other than
.SYMPTOM STRING-
5770 SP/QZHBCGI MSGMCH3601
I've used Google and the IBM API docs to research but I can't see the
issue. My prototype and same call follow.
Dcl-Pr QzhbCgiParse extproc('QzhbCgiParse');
cmdStr char(65535) const options(*trim: *varsize);
outFmt char(8) const;
targetBuf char(65535);
targetSize int(10) const;
responseLen int(10);
errorCode char(56);
End-Pr;
//--------------------------------------------------------------
// GetInputParameter Get the passed parameter from QUERY_STRING
//--------------------------------------------------------------
dcl-proc GetInputParameter;
dcl-pi *n varchar(100);
pSearchParameter varchar(20) const;
end-pi;
dcl-s cmdStr char(65535);
dcl-s outFmt char(8) inz('CGII0100');
dcl-s targetBuf char(65535);
dcl-s targetSize int(10);
dcl-s responseLen int(10) inz(0);
dcl-s errorCode char(56);
dcl-s pos uns(5);
cmdStr = '-value ' + pSearchParameter + x'00';
QzhbCgiParse(cmdStr:outFmt: targetBuf: %size(targetBuf) :
call:errorcode);
dump(a);
If responseLen > 0;
pos = %SCAN(X'25':targetBuf);
Return %Trim(%Subst(targetBuf:1:pos-1));
Else;
Return ' ';
Endif;
end-proc;
I've commented out the call to QzhbCgiParse and the program completes
without error and produces a dump (dump(a)). When I uncomment the
affiliateto
QzhbCgiParse the program fails but produces no dump for dump(a). Itdoes
however create the QPSRVDMP dump I mentioned earlier.list
Any help would be greatly appreciated as I've come to a brick wall.
Thanks,
Rob
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxxrelated
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
questions.
Help support midrange.com by shopping at amazon.com with our
relatedlink: https://amazon.midrange.com--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
--questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.