PC SOFT

WINDEVWEBDEV AND WINDEV MOBILE
ONLINE HELP

Home | Sign in | English UK
  • Security error in a secure transaction
  • Retrieval
  • Accessing a password-protected URL
  • Using a proxy
  • Authentication headers
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Sends an HTTP form. This form was created by HTTPCreateForm.
HTTPCreateForm("FORM")
HTTPAddParameter("FORM", "Price", "3400")
...
HTTPSendForm("FORM", "www.mysite.com")
// Example for sending a file
lIdForm = "TEST"
HTTPCreateForm(lIdForm)
HTTPAddFile(lIdForm, "file", "C:\temp\Certificate.pdf")
IF NOT HTTPSendForm(lIdForm, "http://test.myserver.net", httpPost, "AGENT") THEN
...
END
Syntax

Full syntax Hide the details

<Result> = HTTPSendForm(<Form Name> , <URL to contact> [, <HTTP Method> [, <User agent> [, <Additional HTTP Header> [, <Type of Form> [, <User name> [, <Password>]]]]]])
<Result>: Boolean
  • True if the HTTP form was sent,
  • False if an error occurred. To find out the error details, use ErrorInfo associated with the errMessage constant.
<Form Name>: Character string (with quotes)
Name of HTTP form to send.
<URL to contact>: Character string (with quotes)
Address of server to contact (URL address).
This parameter can contain the port number for connecting to the server. The default value is 80 (corresponds to a server of Web pages). To specify a port number, use the following format: "<Server URL>:<Port #>".
For example: http://www.pcsoft.fr:80.
Note: To perform a secure transaction, the URL must start with "https://".
<HTTP Method>: Optional Integer constant
HTTP method used:
Versions 19 and later
httpCopy
New in version 19
httpCopy
httpCopy
COPY method
httpDeleteDELETE method
httpGetGET method
Versions 19 and later
httpHead
New in version 19
httpHead
httpHead
HEAD method
Versions 19 and later
httpPatch
New in version 19
httpPatch
httpPatch
PATCH method
httpPost
(Default value)
POST method
httpPutPUT method
<User agent>: Optional character string (with quotes)
Identifies the client. The "PC SOFT Framework" value is returned by default.
The content of the response may depend on the user agent. In this case, see the documentation of user agent for more details.
<Additional HTTP Header>: Optional character string (with quotes)
  • Additional HTTP header that will be added to the HTTP message. Caution: this string must end with a CR character (Carriage Return).
  • Empty string ("") if no HTTP header must be added.
<Type of Form>: Optional character string (with quotes) or optional constant
Type of form that will be sent to the server. This parameter corresponds to "Content-Type".
By default, the message type corresponds to: "application/x-www-form-urlencoded".
Versions 22 and later
This parameter can correspond to one of the following constants:
typeMimeMultiPartFormThe message type corresponds to: "multipart/form-data" (mainly used to transfer files).
typeMimeSimpleForm
(Default value)
The message type corresponds to: "application/x-www-form-urlencoded".
New in version 22
This parameter can correspond to one of the following constants:
typeMimeMultiPartFormThe message type corresponds to: "multipart/form-data" (mainly used to transfer files).
typeMimeSimpleForm
(Default value)
The message type corresponds to: "application/x-www-form-urlencoded".
This parameter can correspond to one of the following constants:
typeMimeMultiPartFormThe message type corresponds to: "multipart/form-data" (mainly used to transfer files).
typeMimeSimpleForm
(Default value)
The message type corresponds to: "application/x-www-form-urlencoded".
<User name>: Optional character string (with quotes)
Name used to access a page with a protected URL (empty string by default). This name is used to identify the user.
<Password>: Optional character string (with quotes)
Password associated with the user name (empty string by default). Used to access a page with a protected URL. Caution: The password is not encrypted when it is sent on Internet.
Remarks

Security error in a secure transaction

During a secure transaction, the sending of the form may fail due to security errors:
  • invalid certificate or certificate coming from an unknown company.
  • the name of the site specified in the certificate does not correspond to a server.
  • invalid or expired certificate date.
  • redirection to a non-secure server.
These errors are returned by ErrorInfo.
If one of these errors occurs, you can re-run the request while ignoring the errors.
Two methods can be used according to the syntax:
  • Syntax 1: using the HTTP.IgnoreError variable (see the paragraph below).
If the full syntax is used (syntax 1), all you have to do is use the HTTP.IgnoreError variable:
Error returned by ErrorInfo
(with the errCode constant)
Value of HTTP.IgnoreError
(these values can be combined)
Description
httpErrorInvalidCertificate
Invalid certificate or certificate coming from an unknown company
httpIgnoreInvalidCertificateThe certificate is ignored.
httpErrorInvalidCertificateName
The site name specified in the certificate does not correspond to a server
httpIgnoreInvalidCertificateNameThe site name specified in the certificate is ignored.
httpErrorExpiredCertificate
Invalid or expired certificate date
httpIgnoreExpiredCertificateThe certificate date is ignored
httpErrorRedirectToHTTP
Redirection to a non-secure server
httpIgnoreRedirectToHTTPThe redirection to a non-secure server is allowed.
httpIgnoreRedirectToHTTPS
Redirection to a secure server
httpIgnoreRedirectToHTTPSThe redirection to a secure server is allowed.
For example:
// Send a form on a secure server
ResStart = HTTPSendForm("FORM", "https://www.MyServer.com")
// If an error occurs
IF ResStart = False THEN
// According to the type of error
SWITCH ErrorInfo(errCode)
  // Invalid certificate or coming from an unknown company
  CASE httpErrorInvalidCertificate:
// Ignore the certificate?
IF YesNo("Caution, a security alert was detected!", ...
 "The certificate is invalid.", ...
"Do you want to ignore this certificate?") = Yes THEN
HTTP.IgnoreError = httpIgnoreInvalidCertificate
// Send the form again while ignoring this error
HTTPSendForm("FORM", "https://www.MyServer.com")
END
// Invalid or expired certificate date
CASE httpErrorExpiredCertificate:
// Ignore the certificate date?
IF YesNo("Caution, a security alert was detected!", ...
"The certificate date is invalid or expired.", ...
"Do you want to ignore this date?") = Yes THEN
HTTP.IgnoreError = httpIgnoreExpiredCertificate
// Send the form again while ignoring this error
HTTPSendForm("FORM", "https://www.MyServer.com")
END
END
END

Retrieval

HTTPGetResult is used to retrieve the result of last HTTP form sent.

Accessing a password-protected URL

To access a password-protected URL, you can:
  • use the <User Name> and <Password> parameters found in HTTPSendForm.
  • specify the login and password in the <URL to Contact> parameter.
    For example:
    <Result> = HTTPSendForm("http://<user>:<password>@<URL to contact>")

Using a proxy

To access the URL specified in HTTPSendForm via a proxy, use Proxy.

Authentication headers

The authentication headers are automatically generated in the following cases:
  • If HTTPSendForm is using the syntax with login and password.
  • If the server URL is password protected
  • If Proxy is used.
Component : wd240com.dll
Minimum version required
  • Version 14
This page is also available for…
Comments
Click [Add] to post a comment