Hi. We installed 4.1.1 on aix yesterday and I discovered that when a POST method sends args to a rexx cgi script, you cannot dependably retrieve them:
example:
env = 'ENVIRONMENT'
reqmeth = Value('REQUEST_METHOD',,env)
Select
When reqmeth='POST' & Lines() Then args = Linein()
When reqmeth='GET' Then args = Value('QUERY_STRING',,env)
Otherwise Parse Arg args
End
the lines() command give no rows to read. you can reload the page 50 times and half of the time you get the args and half you don't.
Reverting 3.2.0 fixed the issue.
GETs work just fine.
Anonymous
In this context the lines() function should never work at all. It should
always return zero. The reason that that the lines() function only works
for STREAMS contained in files. It does not work for any other STREAM
type (memory buffers, stacks, etc.). In fact, the lines() function is
can only return zero or one on PC/UNIX file systems, indicating whether
or not there is data left to read from the file.
In the case of a CGI program with a request method of POST you need to
read the buffer with the linein() function until you get a blank line.
That indicates the end of the STREAM in this instance. Each line you
read will have a single attribute=value statement in it until you get to
the blank line.
David Ashley
On 03/13/2015 12:00 PM, Tim wrote:
Related
Bugs:
#1324Not sure this is relevant any more.