©1995–2012, Fairlight Consulting
PayPal: View Cart
RawQuery Introduction

RawQuery is a transport level application that is able to fulfill multiple roles in dealing with CGI programs and HTTP requests.


Originally designed as a CGI debugger, RawQuery uses a generally static flat-file containing the contents of a query to submit to a CGI program. The idea was to get away from the cumbersome world of GUI while debugging CGI programs; you simply have a file, and the contents stay filled in. If you change your CGI program, necessitating a change in the form fields, you are forced to reload that form in a browser and fill it out all over again. With RawQuery, you just add or delete whatever fields you need to, and execute the program again. And unlike web browsers, you have access to the resultant HTML source (or file contents) without any rendering; there is no hunting for View Source. In this role, it is meant to be a brute testing method that gets you to the point where you would want to bother with a browser to look at the esoteric layout of your resultant page. The emphasis is on proving functionality.


After completing RawQuery, it became obvious that the tool had other applications. One of these is pure content retrieval of either static files (HTML or other formats), or of dynamic content derived from a CGI application, which may or may not require query data to be submitted.


Still yet another use is as a query broker. While this may fall partialy under the role of content retrieval, when it involves actually supporting the infrastructure of an enterprise, it becomes far more. One typical use is to use RawQuery to bridge the gap between a public web server and material on a private, isolated server, through a firewall. Another use is to pass along the data from CGI requests locally to a third party data supply house, and return their results for local use. In both cases, you are essentially brokering a request for information.


RawQuery performs no parsing of the results of a query or transmission. Whatever you get back in the result file, it is up to other software to parse or disseminate the data as desired. RawQuery is a transport mechanism, and could be considered an HTTP "driver" of sorts, which your applications may use as needed. The beauty of this is that the program does one thing, and does it well. It is a truly generic transport mechanism, but one robust enough to fill multiple roles within the same enterprise, even on the same server.


RawQuery is a command line tool. There is no GUI, nor will there be one written by Fairlight Consulting. However, RawQuery is not limited to command line use, and may easily be used as an embedded application or "driver" within other software, which would call it as an external.