Description
Sends the request again. The function is called when both of the following conditions are met:
-
Use the PostDataStart function to send the request.
-
When the PostDataStart function or the PostDataEnd function returns error code -22.
Applies to
Syntax
objectname.ResendPostRequest()
Return value
Integer.
1 -- Success.
-1 -- General error.
-2 -- Invalid URL.
-3 -- Cannot connect to the Internet.
-4 -- Timed out.
-5 -- Code conversion failed.
-6 -- Unsupported character sets.
-7 -- Certification revocation checking has been enabled, but the revocation check failed to verify whether a certificate has been revoked. The server used to check for revocation might be unreachable.
-8 -- SSL certificate is invalid.
-9 -- SSL certificate was revoked.
-10 -- The function is unfamiliar with the Certificate Authority that generated the server certificate.
-11 -- SSL certificate common name (host name field) is incorrect, for example, you entered www.appeon.com and the common name on the certificate says www.demo.appeon.com.
-12 -- SSL certificate date that was received from the server is invalid. The certificate has expired.
-13 -- The certificate was not issued for the server authentication purpose.
-14 -- The application experienced an internal error when loading the SSL libraries.
-15 -- More than one type of errors when validating the server certificate.
-16 -- The server requires the client to provide a certificate.
-17 -- The client certificate has no private key.
-18 -- The private key in the client certificate is wrong.
-19 -- A security error has occurred. Possible cause: The client does not support the SSL/TLS version required by the server. For example: Client does not support TLS 1.3 when server requires TLS 1.3.
-20 -- Response is unrecognizable. Normally this is because the HTTP version does not match with the version required by the server.
-21 -- TLS 1.3 error. The server does not support TLS 1.3.
-22 -- The request needs to be resent. Only the ResendPostRequest function can be called at this time.
-24 -- Failed to set the authentication scheme.
-25 -- Failed to decompress data.
Examples
The following example resends the request.
HTTPClient lhc_Client lhc_Client = Create HTTPClient lhc_Client.ResendPostRequest()
The following example shows that when using the PostDataStart function to send the request and this function returns error code -22, the ResendPostRequest function sends the request again.
string ls_User,ls_PassWord,ls_Url,ls_Method long ll_rtn,ll_Code Integer li_Scheme[] blob lbb_Data HTTPClient lhc_Client lhc_Client = Create HTTPClient ls_Method = "POST" lhc_client = create HttpClient ls_User = "guest" ls_PassWord = "guest" ls_Url = "https://csharpserver.appeon.com:8001/" ll_rtn = lhc_Client.SetCredentials(False, 0, ls_User, ls_PassWord) ll_rtn = lhc_Client.SendRequest( ls_Method, ls_Url ) ll_Code = lhc_Client.GetResponseStatusCode() messagebox( "message",'Basic SendRequest("POST") = ' + String(ll_rtn) + " Code:" +String(ll_Code)) lbb_Data = Blob("TlRMTVNTUAADAAAAGAAYAK4AAAAYABgAxgAAAB4AHgBYAAAAGgAaAHYAAAAeAB4AkAAAABAAEADeAAAAFYKI4goAYUoAAAAPEfQVzpqoX2gJ6mlC68O0tTgAMAAzADkAUABBAE4ARwBDAEgAVQBHAFUAQQBOAGEAZABtAGkAbgBpAHMAdAByAGEAdABvAHIAOAAwADMAOQBQAEEATgBHAEMASABVAEcAVQBBAE4AtU4JLOSpoeAAAAAAAAAAAAAAAAAAAAAAcadkZTtacusLDLedDQTLnBF8r+qYLPceXn5MPzyzjrtzLU84RO1FJg==") lhc_Client.SetRequestHeader("Content-Type", "multipart/form-data; boundary--------------------------359875084413580694217125") lhc_Client.SetRequestHeader("Content-Length", string(len(lbb_Data))) ll_rtn = lhc_Client.PostDataStart( ls_Url ) messagebox("message", 'Basic PostDataStart( url )= ' + String(ll_rtn)) IF ll_rtn = -22 THEN ll_rtn = lhc_Client.ResendPostRequest() //wf_output( 'Basic ResendPostRequest( )= ' + String(ll_rtn), False) End If If ll_rtn = 1 Then // send the request ll_rtn = lhc_Client.PostData(lbb_Data, Len(lbb_Data) * 2) messagebox("message", 'Basic PostData( data )= ' + String(ll_rtn)) // Finish sending the message. This interface may return error code -22. IF ll_rtn = -22 THEN //resend the request ll_rtn = lhc_Client.ResendPostRequest() messagebox( "message",'Basic ResendPostRequest( )= ' + String(ll_rtn)) End If ll_rtn = lhc_Client.PostDataEnd() messagebox("message", 'Basic PostDataEnd()= ' + String(ll_rtn)) END IF
See also