That reminds me, I have seen, using these techniques, that at times,
witango can calculate the content length incorrectly. It doesn't
happen often, but it does happen, usually just by one byte, and the
app breaks. We have found, if you can use a value, like LENB() from
the db query, or something like that to calculate content-length, it
will be more reliable.
We had a pdf download app, a while ago, that did this, especially
with on pdf in the db, witango was always one byte off. <@length
"<@var somedata>"> is not completely reliable on binary data.
--
Robert Garcia
President - BigHead Technology
VP Application Development - eventpix.com
13653 West Park Dr
Magalia, Ca 95954
ph: 530.645.4040 x222 fax: 530.645.4040
[EMAIL PROTECTED] - [EMAIL PROTECTED]
http://bighead.net/ - http://eventpix.com/
On Oct 25, 2006, at 10:52 AM, Scott Cadillac wrote:
Hi Alex,
Remove the line-breaks in your httpHeader assignment code. The
contents of
the assignment (what I sent earlier) should all be on one line.
Line-breaks have special meaning in HTTP commands. The <@CRLF>
Metatags are
used for inserting where proper HTTP line-breaks should appear.
There should also be a space between <@HTTPSTATUSCODE> and
<@HTTPREASONPHRASE> (on the same line).
Hope that helps.
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Scott Cadillac,
Xmlx Software
[EMAIL PROTECTED]
(403) 254-5002
http://www.xmlx.net/
XML-Extranet
P.O. Box 69006
RPO Bridlewood SW
Calgary, Alberta
Canada T2Y 4T9
~~~~~~~~~~~~~~~~~~~~~~~~~~~
-----Original Message-----
From: Alex Smersi [mailto:[EMAIL PROTECTED]
Sent: Wednesday, October 25, 2006 11:23 AM
To: [email protected]
Subject: RE: Witango-Talk: Secure download and http header
manipulation
Scott --
many thanks for your support; I have tried with your suggested code,
but I continue to receive Client/Plug-in Error with Error Code: 605.
I'm believe that I'm wrong in Content-Length parameter or some other
parameter in http header.
Attached a very simple ZIP file with .taf application [with filename
and dimension stamped by-hand] and a dumb test.txt file in binaries
directory [where binaries is protected directory]
=== witango.log extracted
[...]
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 4 [File
Action] Read_File
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 4 [Query]
<@ASSIGN NAME=fileContents VALUE="Test riga 1 Test riga 2 Test
riga 3"
SCOPE=local> (read from file:
C:\Inetpub\WebSites\\logosweb.it\services\binaries\test.txt)
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 4 [Return
Action] Return1
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 4 [user$
Vars] variableTimeout=30; arr_ana=[Array:1x6]; ana_auth=true;
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 5
[request$
Vars] variableTimeout=30; httpHeader=HTTP/1.1 200 OK Content-Type:
text/plain Content-Length: 37 Content-Disposition: attachment;
filename=test.txt ; fileContents=Test riga 1 Test riga 2
Test riga 3;
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 5
[Application
File] END /logosweb.it/services/downloadFile_test.taf
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 5 [Thread]
Returning results
25/10/2006 19:01:37 127.0.0.1
[EMAIL PROTECTED] 3620 1 6 [Thread]
Stop processing
Alex/
[EMAIL PROTECTED] 25/10/2006 17:01 >>>
Hi Alex,
I think all it needs is to update the httpHeader variable
assignment to
look
like the following:
<@assign name="httpHeader" scope="request" value="HTTP/1.1
<@HTTPSTATUSCODE>
<@HTTPREASONPHRASE><@CRLF>Content-Type: <@var
local$resultSet[1,filename]><@CRLF>Content-Length: <@var
local$resultSet[1,filesize]><@CRLF>Content-Disposition: attachment;
filename=<@DQ><@var
local$resultSet[1,filename]><@DQ><@CRLF><@userreferencecookie>
<@CRLF>">
Hope that is what you're looking for.
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Scott Cadillac,
Xmlx Software
[EMAIL PROTECTED]
(403) 254-5002
http://www.xmlx.net/
XML-Extranet
P.O. Box 69006
RPO Bridlewood SW
Calgary, Alberta
Canada T2Y 4T9
~~~~~~~~~~~~~~~~~~~~~~~~~~~
-----Original Message-----
From: Alex Smersi [mailto:[EMAIL PROTECTED]
Sent: Wednesday, October 25, 2006 1:39 AM
To: [email protected]
Subject: Witango-Talk: Secure download and http header manipulation
Hello --
I'm search to implement a secure download, where a specific .taf
(downloadfile.taf) read specific file from a directory with no
public
read permission and give the end-user [in transparent manner] the
faculty to save it on local;
I'm believe that Scott Cadillac's attached file [2001-based] is
right
to me, but how can I adapt it to run in WiTango v5.5 environment?
The download manager application can download .zip, .pdf and .txt
files.
Size of single file can vary between 35 bytes and 5/6Mb.
My environment is:
- Windows 2003 box with IIS
- WiTango server v5.5.x
I'm sure that http header is keyword here, but my knowledge about
manipulation of http header is limted; anyone can suggest me
a previous
thread where can I find appropriate info?
Many thanks, Alex/
______________________________________________________________
__________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
______________________________________________________________
__________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
______________________________________________________________
__________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
______________________________________________________________________
__
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
________________________________________________________________________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf