@@ -3,23 +3,30 @@ shared singleton Class constructor()
33Function getResponse ($request : 4D.IncomingMessage) : 4D.OutgoingMessage
44
55 var $response := 4D.OutgoingMessage.new()
6- var $responseBody : Blob
7- var $state : Text := cs . Tools . me . getURLParameterValue ( $request .url; "state" )
8- var $redirectURI : Text := ($ request . urlPath . length > 0) ? "/" + $request . urlPath [ 0 ] + "/@" : $request . url
9- var $options : Object := {state: $state ; redirectURI: $redirectURI }
10-
11- If ( Value type ( $request . urlQuery ) = Is object)
12- $options . result := OB Copy ( $request . urlQuery ; ck shared)
13- End if
14-
15- If ( _authorize ( $options ; - > $responseBody ))
6+ If ($request # Null)
7+
8+ var $responseBody : Blob
9+ var $state : Text := cs . Tools . me . getURLParameterValue ( $request .url; "state" )
10+ var $redirectURI : Text := ($ request . urlPath . length > 0) ? "/" + $request . urlPath [ 0 ] + "/@" : $request . url
11+ var $options : Object := {state: $state ; redirectURI: $redirectURI }
12+
13+ If ( Value type ( $request . urlQuery ) = Is object)
14+ $options . result := OB Copy ( $request . urlQuery ; ck shared)
15+ End if
1616
17- $response .setStatus (200 )
18- $response .setBody ($responseBody )
19- $response .setHeader ("Content-Type" ; "text/html" )
17+ If (_authorize ($options ; - > $responseBody ))
18+
19+ $response .setStatus (200 )
20+ $response .setBody ($responseBody )
21+ $response .setHeader ("Content-Type" ; "text/html" )
22+ Else
23+
24+ $response .setStatus (404 )
25+ End if
2026 Else
27+ throw ({code: 9; component: "4DNK"; deferred: True; which: "request (4D.IncomingMessage)"; function: "OAuth2Authorization .getResponse "})
2128
22- $response .setStatus (404 )
29+ $response .setStatus (500 )
2330 End if
2431
2532 return $response
0 commit comments