HTTP Considerations
<< Click to Display Table of Contents >> Navigation: Robo-FTP User's Guide > Appendix > HTTP Considerations |
A connection to an HTTP or HTTPS server may involve the following considerations not relevant to FTP, FTPS, and SFTP connections.
Cookies
Robo-FTP supports cookies in HTTP/HTTPS connections on a per-session basis. Each session's cookie store is destroyed when the session ends. In this context, the term "session" means the period between the FTPLOGON and FTPLOGOFF.
URL Encoding
When connected to HTTP/HTTPS sites you may encounter situations where the name of a resource on the remote site contains characters that are reserved, unsafe, or otherwise unprintable. In these situations web servers allow you to "percent encode" the required character by replacing it with a percent sign and the two digit hexadecimal representation of the character's position in the ASCII character set.
The following chart lists characters that are frequently URL encoded:
space |
%20 |
% |
%25 |
^ |
%5e |
$ |
%24 |
: |
%3a |
" |
%22 |
{ |
%7b |
~ |
%7e |
& |
%26 |
; |
%3b |
< |
%3c |
} |
%7d |
[ |
%5b |
+ |
%2b |
= |
%3d |
> |
%3e |
| |
%7c |
] |
%5d |
, |
%2c |
? |
%3f |
# |
%23 |
\ |
%5c |
` |
%60 |
/ |
%2f |
@ |
%40 |
Directory Listings
The success of several script command depends on Robo-FTP's ability to automatically read and understand the directory listings returned by the remote site. Most HTTP/HTTPS sites do not return listings in a supported format and many return no raw directory listings in response to HTTP GET requests based on slash-terminated URLs. Some respond to HEAD requests and are partially compatible. HTTP servers work in one of 3 ways.
1.Server supports the DAV PROPFIND verb. This allows fully functional directory listings and all comands work as expected.
2.Server does not support DAV PROPFIND verb. GET is used instead which will result in finding all children of the current directory. This listing behavior will only find file names, it will not include file timestamps or sizes.
3.Using the FTPLOGON /precisetime option. For each child name found using the GET, a HEAD verb will be used to find the size and timestamp. This is slower but will work with most servers.
Miscellaneous Differences
Many of the Robo-FTP script commands for manipulating files on a remote site will only work with DAV enabled web servers. With other Robo-FTP commands, the wildcard pattern matching behavior is modified or unavailable on HTTP and HTTPS connections. Details regarding these differences are included on the Help file pages for the applicable script commands.