* Added beautify for JSON
This commit is contained in:
		
							parent
							
								
									61f16f0278
								
							
						
					
					
						commit
						3665c0a6b5
					
				| @ -26,7 +26,7 @@ uses | ||||
|   SysUtils, Classes, strutils, IniFiles, | ||||
|   {$ifdef use_synapse}httpsend, ssl_openssl,{$endif} | ||||
|   {$ifdef use_fclweb}fphttpclient,{$endif} | ||||
|   JTemplate; | ||||
|   JTemplate, fpjson, jsonparser; | ||||
| 
 | ||||
| var | ||||
|   data: TextFile; | ||||
| @ -40,6 +40,7 @@ var | ||||
|   configDir, templateDir: String; | ||||
|   templateFile, templateName: String; | ||||
|   sessionIni: TIniFile; | ||||
|   beautify: Boolean; | ||||
| 
 | ||||
| procedure CmdAskUser(AName: String); | ||||
| var | ||||
| @ -92,6 +93,8 @@ var | ||||
|   {$ifdef use_fclweb} | ||||
|   request, response: TStream; | ||||
|   {$endif} | ||||
|   jsonParser: TJSONParser; | ||||
|   jsonData: TJSONData; | ||||
| begin | ||||
|   parser.Content := AURL; | ||||
|   parser.Replace; | ||||
| @ -150,9 +153,21 @@ begin | ||||
|   for s in http.ResponseHeaders do | ||||
|     writeln('  ', s); | ||||
|   writeln; | ||||
| 
 | ||||
|   response.Position := 0; | ||||
|   content.LoadFromStream(response); | ||||
|   writeln(content.Text); | ||||
| 
 | ||||
|   if beautify and (Pos('application/json', http.GetHeader(http.ResponseHeaders, 'Content-Type')) > 0) then | ||||
|   begin | ||||
|     jsonParser := TJSONParser.Create(response); | ||||
|     jsonData := jsonParser.Parse; | ||||
|     writeln(jsonData.FormatJSON); | ||||
|     jsonData.Free; | ||||
|     jsonParser.Free; | ||||
|   end else | ||||
|   begin | ||||
|     content.LoadFromStream(response); | ||||
|     writeln(content.Text); | ||||
|   end; | ||||
| 
 | ||||
|   response.Free; | ||||
|   request.Free; | ||||
| @ -199,6 +214,11 @@ begin | ||||
|     Result := True; | ||||
|     CmdBasicAuth(Copy(ALine, 10, Length(ALine))); | ||||
|   end else | ||||
|   if ALine = 'Beautify' then | ||||
|   begin | ||||
|     Result := True; | ||||
|     beautify := True; | ||||
|   end else | ||||
|   if AnsiStartsStr('Call ', ALine) then | ||||
|   begin | ||||
|     Result := True; | ||||
| @ -255,6 +275,7 @@ begin | ||||
| 
 | ||||
|   parser := TJTemplateParser.Create; | ||||
|   content := TStringList.Create; | ||||
|   beautify := False; //By default, we don't want to manipulate output. | ||||
| 
 | ||||
|   {$ifdef use_synapse} | ||||
|   http := THTTPSend.Create; | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user