To configure a http client user must set the remote server's FQDN (Fully Qualified Domain Name) or its internet address and set the proper socket layer i.e. the secure one or not. It is done by marking the proper check box and putting a port number of the remote server.
The optfinderML's client is set as a HTTP/1.1 client. Thus it is configured according to rules written in the RFC 2068.
The HTTP/1.1 client initiates a new connection to the server. The client transits the request headers with a conditional GET method request if the server response is cacheable (indicated by the Cache-Control header field). A response is cacheable if a cache is allowed to store a copy of the response message for use in answering subsequent requests. The conditional request ensures that the entity is transferred only under the circumstances described by the conditional header fields. Such property allows to recognize if the current server's entry is stale or contains a fresh entity.
The optfinderML has the Cache-Control request header field set as: no-cache to force any intermediate caches to obtain a new copy from the origin server.
If the HTTP connection is of the ssl type the request should require user authentication. The client can apply the basic authentication scheme. It means that a client authenticate itself with a user ID and a password. In such a case, the optfinderML software will ask for authorization credentials and include them to the client's request. If authentication failed then the 401 (Unauthorized) response will be displayed.
The scheme below-presented shows an example of information exchange between optfinderML HTTP client program and remote server listening on the address fqdn:443. If the server uses a secure server socket then https request should be addressed otherwise http is the appropriate one. The optfinderML HTTP client sends the POST request of application/x-www-form-urlencoded type to upload system outputs whereas the GET request is sent to download messages and payments data. They can be gzip-encoded.
After successful data exchange the files containing environmental messages and payments should be found at the optfinderML/data directory whereas the system outputs should be transferred to a remote resource representing environment.