Projekt

Obecné

Profil

Komunikační protokol » Historie » Revize 10

Revize 9 (Ondřej Váně, 2020-05-06 15:27) → Revize 10/18 (Ondřej Váně, 2020-05-06 15:28)

h1. Komunikační protokol (v.1) 

 * Jednotlivé zprávy budou zasílány ve fromátu JSON 
 * Komunikace bude probíhat pomocí HTTP protokolu 
 * Budou využívány návratové HTTP kódy stavů (200, 400, 500, atd.) 
 * Návrh komunikace na obrázku níže. 

 !kom_protokol.png! 

 h2. REST API - URL 

 * */search*: POST => hledání výrazu v dokumentech 
 * */documents*: POST => přídání nového dokumentu a obrázku 
 * */documents*: GET     => vypsání všech dokumemtů (název, datum, atd.) jen základní info 
 * */documents/{název dokumentu}*: GET     => získání obrázku k danému dokumentu 



 * Struktura jednotlivých zpráv 
 ** Query message: 
 <pre><code class="json"> 
 {  
	 "query": "hledaný výraz",  
	 "date": "čas odeslání dotazu"  
	
 } 
 </code></pre> 
 ** Query to Solr message: 
 <pre><code class="json"> 
 {  
	 "query": "Pole pro vyhledávání : hledaný výraz" 
	
 } 
 </code></pre> 
 ** Query result from Solr: 
 <pre><code class="json"> 
 { 
    "IdDocument":"id dokumentu", 
    "TextRegion":{ 
       "PlainText":"text region", 
       "Coords":"koordináty regionu", 
       "TextLine":[ 
          { 
             "PlainText":"text line", 
             "Coords":"koordináty řádky", 
             "TextWord":[ 
                { 
                   "PlainText":"text word", 
                   "Coords":"koordináty slova" 
                } 
             ] 
          } 
       ] 
    } 
 } 
 </code></pre> 

 ** Query response: 
 <pre><code class="json"> 
 { 
    "IdDocument":"id dokumentu", 
    "DocumentImage":"Obrázek v Base64", 
    "TextRegion":{ 
       "PlainText":"text region", 
       "Coords":"koordináty regionu", 
       "TextLine":[ 
          { 
             "PlainText":"text line 1", 
             "Coords":"koordináty řádky", 
             "TextWord":[ 
                { 
                   "PlainText":"text word 1", 
                   "Coords":"koordináty slova" 
                } 
             ] 
          } 
       ] 
    } 
 } 
 </code></pre>