Projekt

Obecné

Profil

Komunikační protokol » Historie » Revize 12

Revize 11 (Ondřej Váně, 2020-05-06 15:37) → Revize 12/18 (Ondřej Váně, 2020-05-06 15:38)

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: /search : POST 
 <pre><code class="json"> 
 {  
	 "query": "hledaný výraz",  
	 "date": "čas odeslání dotazu" 
	 "enableSpellCheck": "logická hodnota, která určuje, zda se používá spell check"  
	
 } 
 </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>