OPENCLIENT: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
m (missing & from variable name h&)
No edit summary
Line 2: Line 2:
The '''_OPENCLIENT''' function connects to a Host on the Internet as a Client and returns the Client status handle.
The '''_OPENCLIENT''' function connects to a Host on the Internet as a Client and returns the Client status handle.


{{Text|'''HTTP functionality is current unstable, and requires [[$UNSTABLE]]:HTTP to be able to use.'''|red}}
{{Text|'''Before QB64-PE v4.0.0 HTTP functionality was unstable and requires [[$UNSTABLE]]:HTTP to be able to be used.'''|red}}





Revision as of 21:29, 17 November 2024

The _OPENCLIENT function connects to a Host on the Internet as a Client and returns the Client status handle.

Before QB64-PE v4.0.0 HTTP functionality was unstable and requires $UNSTABLE:HTTP to be able to be used.


Syntax

clientHandle& = _OPENCLIENT("TCP/IP:8080:12:30:1:10")
clientHandle& = _OPENCLIENT("HTTP:url")


Description

  • An Illegal Function Call error will be triggered if the function is called with a string argument of the wrong syntax.
  • Connects to a host somewhere on the internet as a client.
  • Valid clientHandle& values are negative. 0 means that the connection failed. Always check that the handle returned is not 0.
  • CLOSE clientHandle& closes the client. A failed handle of value 0 does not need to be closed.


Examples

Example 1
Attempting to connect to a local host(your host) as a client. A zero return indicates failure.
client = _OPENCLIENT("TCP/IP:7319:localhost")
IF client THEN
   PRINT "[Connected to " + _CONNECTIONADDRESS(client) + "]"
ELSE PRINT "[Connection Failed!]"
END IF
NOTE: Try a valid TCP/IP port setting to test this routine!

Example 2
Using HTTP to download from a URL.
' Content of the HTTP response is returned. The statusCode is also assigned.
FUNCTION Download$(url AS STRING, statusCode AS LONG)
    h& = _OPENCLIENT("HTTP:" + url)

    statusCode = _STATUSCODE(h&)

    WHILE NOT EOF(h&)
        _LIMIT 60
        GET #h&, , s$
        content$ = content$ + s$
    WEND

    CLOSE #h&

    Download$ = content$
END FUNCTION


See also



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link