![]() | ![]() Products ![]() ![]() ![]() ![]() |
Home » Technical Support » Elevate Web Builder Technical Support » Incident Reports » Incident Reports Reported for Version 2.04 » View Incident Report |
![]() |
Reported By: Boris B Reported On: 1/31/2016 For: Version 2.04 Build 1 |
unit Unit1; interface uses WebCore, WebUI, WebForms, WebCtrls, WebLabels, WebBtns, WebHTTP; type TForm1 = class(TForm) Label1: TLabel; Button1: TButton; ServerRequestQueue1: TServerRequestQueue; procedure Button1Click(Sender: TObject); procedure ServerRequest1Complete(Request: TServerRequest); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation type TUserRole = class(TPersistent) private fID: integer; fName: string; published property ID: integer read fID write fID; property Name: string read fName write fName; end; TUserDetails = class(TPersistent) private fID: integer; fName: string; fRoles: array of TUserRole; protected function LoadProperty(AReader: TReader): Boolean; override; published property ID: integer read fID write fID; property Name: string read fName write fName; property Roles: array of TUserRole read fRoles write fRoles; end; procedure TForm1.Button1Click(Sender: TObject); var authRequest:TServerRequest; begin authRequest := ServerRequestQueue1.GetNewRequest; authRequest.URL := '/api/User'; authRequest.Method := rmGet; authRequest.OnComplete := ServerRequest1Complete; ServerRequestQueue1.AddRequest(authRequest); end; procedure TForm1.ServerRequest1Complete(Request: TServerRequest); var reader: TReader; userDetails: TUserDetails; begin try reader := TReader.Create; reader.Initialize(Request.ResponseContent.Text); userDetails := TUserDetails.Create; userDetails.Load(reader); Label1.Caption := Request.ResponseContent.Text; // userDetails.Name + IntToStr( Length(userDetails.Roles) ); except Label1.Caption := 'error'; end; end; function TUserDetails.LoadProperty(AReader: TReader): Boolean; var TempPropertyName: String; begin Result:=False; TempPropertyName:=AReader.GetPropertyName; if (TempPropertyName <> '') then begin if SameText(TempPropertyName,'Roles') then begin Result:=True; AReader.SkipPropertyName; AReader.SkipPropertySeparator; LoadArray(AReader); end else Result:=inherited LoadProperty(AReader); end; end; end.
This web page was last updated on Wednesday, February 8, 2023 at 07:22 AM | Privacy Policy![]() © 2023 Elevate Software, Inc. All Rights Reserved Questions or comments ? ![]() |