DataFlex
DataFlex
Example: Http.SetOAuthRsaKey method
Demonstrates theSetOAuthRsaKey method.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoPfx
Variant vPrivKey
Handle hoPrivKey
Handle hoHttp
Variant vResp
Handle hoResp
String sTemp1
Move False To iSuccess
Get Create (RefClass(cComChilkatPfx)) To hoPfx
If (Not(IsComObjectCreated(hoPfx))) Begin
Send CreateComObject of hoPfx
End
Get ComLoadPfxFile Of hoPfx "qa_data/pfx/MCD_Sandbox_chilkat_iccp_API_Keys/chilkat_iccp-sandbox.p12" "keystorepassword" To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoPfx To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey
If (Not(IsComObjectCreated(hoPrivKey))) Begin
Send CreateComObject of hoPrivKey
End
Get pvComObject of hoPrivKey to vPrivKey
Get ComPrivateKeyAt Of hoPfx 0 vPrivKey To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoPfx To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatHttp)) To hoHttp
If (Not(IsComObjectCreated(hoHttp))) Begin
Send CreateComObject of hoHttp
End
// Use OAuth1.0a authentication.
Set ComOAuth1 Of hoHttp To True
// Use your own consumer key (this is not a valid consumer key)
Set ComOAuthConsumerKey Of hoHttp To "123abc"
Set ComOAuthSigMethod Of hoHttp To "RSA-SHA256"
Get pvComObject of hoPrivKey to vPrivKey
Get ComSetOAuthRsaKey Of hoHttp vPrivKey To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// Tell Chilkat to automatically calculate and add the oauth_body_hash field when sending the request.
Set ComOAuthBodyHash Of hoHttp To True
// Send this request to an endpoint at chilkatsoft.com. The purpose of this example is to show
// how the OAuth1.0a Authorization header is computed and sent by Chilkat.
// The chilkatsoft.com site itself doesn't do OAuth1. It's just ignoring the Authorization header.
Get Create (RefClass(cComChilkatHttpResponse)) To hoResp
If (Not(IsComObjectCreated(hoResp))) Begin
Send CreateComObject of hoResp
End
Get pvComObject of hoResp to vResp
Get ComHttpStr Of hoHttp "POST" "https://chilkatsoft.com/echo_request_body.asp" "<notUsed>123</notUsed>" "utf-8" "application/xml" vResp To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoHttp To sTemp1
Showln sTemp1
Procedure_Return
End
// Examine the request header we just sent..
Get ComLastHeader Of hoHttp To sTemp1
Showln sTemp1
// Sample output:
// POST /echo_request_body.asp HTTP/1.1
// Host: chilkatsoft.com
// Accept: */*
// Accept-Encoding: gzip
// Content-Type: application/xml
// Content-Length: 22
// Authorization: OAuth oauth_consumer_key="123abc", oauth_nonce="A2E91C3B53E0BD7FBF71F441336679E358DDCEEE", oauth_body_hash="a5kPTsDwUwmBjC0voNlAAvM6YoaRS5X7sTO49jl3/h8=", oauth_timestamp="1756324932", oauth_signature_method="RSA-SHA256", oauth_version="1.0", oauth_signature="*****"
End_Procedure