рдЯреАрдПрд╕рдбреА рдкрд░ рдЖрд╡реЗрджрди рдФрд░ 1 рд╕реА рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░: рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝ 8.3 HTTP-Service рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред рднрд╛рдЧ 2 (рдПрдкреАрдЖрдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди 1C рдХреА рдУрд░)

1. рд╡рд┐рдирд┐рдордп рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд┐рдХрд▓реНрдкред рдПрдкреАрдЖрдИ рд╡рд┐рд╡рд░рдгред

2. 1 рд╕реА рдХреЗ рдХрд┐рдирд╛рд░реЗ рдкрд░ рдПрдкреАрдЖрдИ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред


3. TSD рдкрд░ рдЖрд╡реЗрджрди рдФрд░ 1C рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░: HTTP-рд╕реЗрд╡рд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝ 8.3ред рднрд╛рдЧ 3 (рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯрд╕реАрд╡рд░ред рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛)

рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдПрдЪрдЯреАрдЯреАрдкреА рд╕реЗрд╡рд╛ рдХреИрд╕реЗ рдмрдирд╛рдИ рдЬрд╛рдП, рдЗрд╕ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдореИрдиреБрдЕрд▓ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рддреБрд░рдВрдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛ рдореЗрдВ рддреАрди URL рдкреИрдЯрд░реНрди рд╣реИрдВ:

  • рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдБ - / v1 / рдХреИрдЯрд▓реЙрдЧ / {рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛} / {рдХреНрд░рд┐рдпрд╛}
  • рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ - / v1 / рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ / {рджрд╕реНрддрд╛рд╡реЗрдЬрд╝} / {рдХрд╛рд░реНрд░рд╡рд╛рдИ}
  • рд╕реЗрд╡рд╛рдПрдВ - / v1 / рд╕реЗрд╡рд╛рдПрдВ / {рдХреНрд░рд┐рдпрд╛}


рд▓реЗрдЦ рдХреЛ рди рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдВрджрд░реНрдн рдкреБрд╕реНрддрдХ "рдирд╛рдордХрд░рдг" рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред 1C рд╣рдореЗрдВ HTTP рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рд╛рд╕реНрддреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, URL рдкреИрдЯрд░реНрди (/ v1 / рдХреИрдЯрд▓реЙрдЧ / рд╡реЗрдпрд░ / {Action} рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рджреЛ HTTP рддрд░реАрдХреЗ GET, POST рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВред рдЕрдиреНрдп рдкреИрдЯрд░реНрди рдореЗрдВ рд╣рдо ZET, POST рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
  • / v1 - рд╣рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрдИ рдПрдкреАрдЖрдИ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред рд╣рдо URL рдЯреЗрдореНрдкрд▓реЗрдЯ v_V2_Directories рдФрд░ рддрджрдиреБрд╕рд╛рд░ рдкрде / v2 рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ
  • / рдХреИрдЯрд▓реЙрдЧ / рдорд╛рд▓ / - рдХреИрдЯрд▓реЙрдЧ рд╕рднреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд░рд╛рд╕реНрддреЗ рдХрд╛ рд╕реНрдерд┐рд░ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдирд╛рдорд╛рдВрдХрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдЕрдиреБрдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИред 1C URL рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ "рд╡реЗрдпрд░" рдбрд╛рд▓ рджреЗрдЧрд╛ред рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╣рдо рдЦреБрдж рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЖрддреЗ рд╣реИрдВред рдФрд░ рдлрд┐рд░ рд╣рдо рдпрд╣ рднреА рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ 1 рд╕реА рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП
  • {рдХреНрд░рд┐рдпрд╛} - рдпрд╣рд╛рдВ рд╣рдо рд╡рд╣ рдкрд╛рд╕ рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд╣рдо 1 рд╕реА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП getByParam рдпрд╛ getAll


рд░реЗрдЯреНрд░реЛрдлрд┐рдЯ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдмреЗрд╕реБрдПрд▓ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ "http://192.168.0.1/unf/hs/inntsd/v1/" рдЬрд╣рд╛рдВ:

  • 192.168.0.1 - рд╕рд░реНрд╡рд░ рдЬрд╣рд╛рдВ HTTP рд╕реЗрд╡рд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛрддреА рд╣реИ
  • / unf - 1C рдбреЗрдЯрд╛рдмреЗрд╕ рдирд╛рдо
  • / hs - HTTP рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рд░ рд╣рд┐рд╕реНрд╕рд╛
  • / inntsd рд╕рдВрдкреВрд░реНрдг рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рд░реВрдЯ URL рд╣реИред рдЬреИрд╕рд╛ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд╡реИрд╕рд╛ рд╣реА рдмреБрд▓рд╛рдУ


рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

  Get() //  .       Get   //Post  = (, "GET"); //middleware.      .  = ();     = ();  (, )   = (); //   {}  = (); //   {}  = (); //     URL.      .URL  =(); //      .     Firefox ,  Google Chrome   =  ; .("", ); .("", ); .("", ); .("", ); .("", );  ;   ()  = ..("Content-Type");  =  ; .("", ); //     "Content-Type","content-type", "Content-type"   =    = ..("content-type"); ;   =    = ..("ontent-type"); ;   =   .("", );  ; ;  ((), "multipart/form-data") > 0   = ();  ((), "application/json") > 0   = JSON();  .("", ); ;  ;  //      JSON    .     .  JSON(); JSON =  JSON;  = .(); JSON.();   = JSON(JSON,,"sampleDate",JSON.ISO); .("", );   =  ; .("", ); ; JSON.();  ;  


рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдХрдИ рдмреБрд░реА рдпреБрдХреНрддрд┐рдпрд╛рдВ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдирд╛рдо, рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рдПрдХ рдЧрдгрдирд╛ рдпрд╛ рдореИрдЪреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдкреВрд░рдХ рдореЗрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╣реИ, рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдлреИрд╕рд▓рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред

рдЪрд▓реЛ getByParam рдЕрдиреБрд░реЛрдз рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ ред рдкреВрд░рд╛ рдкрддрд╛: / v1 / рдХреИрдЯрд▓реЙрдЧ / рдорд╛рд▓ / getByParam? Prop = byCode рдФрд░ рддреБрд▓рдирд╛ = рдЗрд╕реА рддрд░рд╣ рдФрд░ searchString = 239

рдкрддрд╛ рдХрд░реЗрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред
  ()  . = ""   = ();  . = ""   = ()   = (100, "    " + .); ;  ;  


рдЕрдиреБрд░реЛрдз рд╡рд┐рдзрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рдФрд░ рд╣рдо рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдкреИрд░рд╛рдореАрдЯрд░ рд╡рд┐рдзрд┐ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВред рдпрд╣рд╛рдБ рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдореИрдВ рдЧрд╣рд░реА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдБред рдЪреВрдВрдХрд┐ рдореИрдВ 1C рдФрд░ Android рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВред
  ()  . = ""   = ..("prop");  = ..("comparison");  = ..("searchString");  ( = )  ( = )  ( = )   = (103, "     /      ");  ; ;  = (, , );  = (0, ""); .("payload", );  . = ""   = ();  = (0, ""); .("payload", );   = ("102", "     " + .); ;  ;  


рдЕрдЧрд░ рд╕рдм рдареАрдХ рд╣реИред рд╣рдо рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
  (, , )  =  ;  = "  | .  , | .  , | .  , | .  , | ..   | | .   | |  . |  {}";  = "";  () = ("byCode")   = ".";  () = ("byArticle")   = ".";  () = ("byName")   = "."; ;  () = ("equally")   =  + " = &";  () = ("similarly")   =  + "  &"; ;  = (, "{}", ); . = ;  () = ("similarly")   = "%" +  + "%"; ; .("", );  = .().();  = .();  =  ;       .( ("code,article, name, fullName, unit", ., ., ., ., .)); ;  =  ; .("quantity", ); .("wares", );  ;  


рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдо рдПрдХ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдПрдХрдЬреБрдЯ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕реЗ JSON рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреЗрдЬрддреЗ рд╣реИрдВред
  = (0, ""); .("payload", );  ;  (, )   = (); HTTP =  HTTP(); HTTP.["Content-Type"] = "application/json; charset=utf-8"; //   json UTF-8 // ToDo CORS //HTTP.["Access-Control-Allow-Origin"] = ; //HTTP.["Access-Control-Allow-Credentials"] = "true"; HTTP.();  HTTP;   () JSON =  JSON(, .,,,,,,,);  =  JSON; . = ; .(JSON);  =  JSON; . = JSON.; . = JSON.ISO; JSON(, , );  = .();  ;  


рдФрд░ рд╣рдо рдЧреНрд░рд╛рд╣рдХ рдХреЛ рдпрд╣ рд╕рдм рджреЗрддреЗ рд╣реИрдВред
  = (200, )  ; 


рднрд▓реЗ рд╣реА рд╣рдореЗрдВ 1 рд╕реА рд╕реЗ рдорд┐рд▓рд╛ рд╣реЛред рд╣рдо рд╣рдореЗрд╢рд╛ рд╕рд╣реА рдЙрддреНрддрд░ рджреЗрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред
  (, )  =  ;  =  (); .("code", ); .("description", ); .("result", ); .("payload",  );  ;  


рд╡рд╣ рд╕рдм рд╣реИред рдЕрдиреНрдп рд╕рднреА рддрд░реАрдХреЛрдВ рдХреЛ рдПрдХ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд╢реНрди рдкреВрдЫреЗрдВред рдореБрдЭреЗ рдЙрддреНрддрд░ рджреЗрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

Source: https://habr.com/ru/post/hi473546/


All Articles