Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program TestHttpSeverFinalization;
- {$APPTYPE CONSOLE}
- {$I Synopse.inc}
- uses
- {$I SynDprUses.inc} // use FastMM4 on older Delphi, or set FPC threads
- SysUtils,
- opensslsockets,
- SynCrtSock,
- SynLog,
- mORMot,
- mORMotHttpServer,
- mORMotService;
- var
- AService: TSQLRestServerFullMemory;
- AHTTPServer: TSQLHttpServer;
- begin
- AService := TSQLRestServerFullMemory.CreateWithOwnModel([],false, 'root');
- AHTTPServer := TSQLHttpServer.Create(
- '8080',
- [AService],
- '+'
- {$IFNDEF FPC}
- {$ifndef ONLYUSEHTTPSOCKET}
- ,useHttpApiRegisteringURI;
- {$endif}
- {$ENDIF}
- );
- try
- AHTTPServer.AccessControlAllowOrigin := '*';
- with TSynLog.Family do
- begin
- DestinationPath := ExtractFileDir(ParamStr(0));
- PerThreadLog := ptIdentifiedInOnFile; // ease multi-threaded server debug
- HighResolutionTimestamp := True;
- Level := LOG_VERBOSE;
- end;
- WriteLn('Server runing in http://localhost:', AHTTPServer.Port);
- ReadLn;
- //Workarround do avoid exception on server finalization
- AHTTPServer.Shutdown();
- while AHTTPServer.DBServerCount > 0 do
- AHTTPServer.RemoveServer(AHTTPServer.DBServer[0]);
- finally
- FreeAndNil(AHTTPServer);
- FreeAndNil(AService);
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement