DigestAuthWebClient (FB)

FUNCTION_BLOCK DigestAuthWebClient EXTENDS CBM.ETrigTo

Webclient for digest authentification, MD5 and SHA-256 available

InOut:

Scope

Name

Type

Initial

Comment

Inherited from

Input

xExecute

BOOL

Rising edge: Action starts
Falling edge: Resets outputs
If a falling edge occurs before the function block has completed its action, the outputs operate in the usual manner and are only reset if either the action is completed or in the event of an error. In this case, the corresponding output values (xDone, xError) are present at the outputs for exactly one cycle.

ETrigTo

udiTimeOut

UDINT

Defines the time (µs) after which an FB (e.g. requiring an external acknowledgement) aborts operation due to a timeout with error message.

ETrigTo

Output

xDone

BOOL

TRUE: Action successfully completed

ETrigTo

xBusy

BOOL

TRUE: Function block active

ETrigTo

xError

BOOL

TRUE: Error occurred, function block aborts action
FALSE: No error

ETrigTo

Input

wsLogin

WSTRING(255)

Login name

wsPassword

WSTRING(255)

Password

sURL

STRING(1024)

URL of the web server

eRequestType

REQUEST_TYPE

REQUEST_TYPE.GET

Type of the request:

eContentType

CONTENT_TYPE

CONTENT_TYPE.APPLICATION_FORM

HTTP Content-Type of the request

pwsAdditionalHeader

POINTER TO WSTRING

Additional HTTP header

pwsPostValue

POINTER TO WSTRING

Post parameter

xCloseConnection

BOOL

FALSE

Close the connection after each request.

itfTLSContext

NBS.ITLSContext

0

Encapsulates all the data neccecray to handle encrypted tcp connections

Static initialization, as shown in the following code snippet.

VAR
    commonName : STRING := 'MyRrasPi';
    ciCertInfo : NBS.CERT_INFO := (psInfo:=ADR(commonName), udiSize:=LEN(commonName));
    myTLSContext : NBS.TLSContext := (
        ePurpose:=NBS.PURPOSE.CLIENT_SIDE,
        sUseCaseName:='NBSTest',
        sTLSVersion:='1.3',
        ciCertInfo:=ciCertInfo,
        udiVerificationMode:=2
    );
END_VAR

itfAsyncProperty

NBS.IAsyncProperty

0

Runs the connect process in a own background task, usage see library Net Base Services

Output

eError

ERROR

Current error state

httpResult

HttpResult

The result of the request

Methods:

Structure: