OAuth2WebClient (FB)ΒΆ
FUNCTION_BLOCK OAuth2WebClient
Function block to a send a request via 2 legged OAuth2 authentication. Supported request types (flows): client_credentials and password.
- InOut:
Scope
Name
Type
Initial
Comment
Input
xExecuteBOOLRising edge: Send request
udiTimeOutUDINTTimeout in micro seconds
sURLSTRING(1024)URL of the web server (resource server)
eRequestTypeREQUEST_TYPE.GET
Type of the request: POST or GET
eContentTypeCONTENT_TYPE.APPLICATION_FORM
HTTP Content-Type of the request
pwsAdditionalHeaderPOINTER TO WSTRING
Additional HTTP header
pwsPostValuePOINTER TO WSTRING
Post parameter
sAuthorizationServerURLSTRING(1024)URL of authorization server
pwsAdditionalAuthenticationHeaderPOINTER TO WSTRING
Additional Auth HTTP header
itfOAuth2CredentialsOAuth2 credentials
xCloseConnectionBOOLFALSE
Close the connection after each request.
itfTLSContextNBS.ITLSContext0
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
itfAsyncPropertyNBS.IAsyncProperty0
Runs the connect process in a own background task, usage see library Net Base Services
Output
xDoneBOOLxBusyBOOLxErrorBOOLeErrorCurrent error state
httpResultThe result of the request
Methods:
Structure: