JSON RPC

JSON-RPC 2.0 БпСцификация: https://www.jsonrpc.org/specification

ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС 1 Запрос Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ 4 поля: jsonrpc - всСгда Π±ΡƒΠ΄Π΅Ρ‚ β€œ2.0”, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. method - Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ. params β€” ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅, Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΊ Π²Ρ‹Π·ΠΎΠ²Ρƒ (Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ). id β€” ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π²Ρ‹Π·ΠΎΠ²Π°. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ id Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ ΠΏΡ€ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π²Ρ‹ смоТСтС ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΈΡˆΠ΅Π» ΠΎΡ‚Π²Π΅Ρ‚, сопоставив id ΠΎΡ‚Π²Π΅Ρ‚Π°.

Если Π²Ρ‹ Π½Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ id, Ρ‚ΠΎ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ вас Π½Π΅ интСрСсуСт ΠΈ ΠΎΡ‚ сСрвСра Π²Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅. Π’Π°ΠΊΠΎΠΉ Π²Ρ‹Π·ΠΎΠ² называСтся Π½ΠΎΡ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ.

2 ΠžΡ‚Π²Π΅Ρ‚ jsonrpc β€” всСгда Π±ΡƒΠ΄Π΅Ρ‚ β€œ2.0”, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. result β€” Ρ‚Π΅Π»ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° (Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ). id β€” ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΎΡ‚Π²Π΅Ρ‚Π°. Он Π½ΡƒΠΆΠ΅Π½ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠ³ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ запрос ΠΎΠ½ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΎΡ‚Π²Π΅Ρ‚. error β€” Π² случаС ошибки вмСсто result, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅ error, содСрТащСС Π² сСбС code (ΠΊΠΎΠ΄ ΠΎΡ‚Π²Π΅Ρ‚Π°: ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ ΠΈΡ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡˆΠ΅ΡΡ‚ΡŒ) ΠΈ message (чСловСкопонятноС описаниС ошибки).

3 Batch МоТно Π΄Π΅Π»Π°Ρ‚ΡŒ нСсколько запросов Π² ΠΎΠ΄Π½ΠΎΠΌ

4 ΠšΠΎΠ΄Ρ‹ ошибок code message meaning -32700 Parse error Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text. -32600 Invalid Request The JSON sent is not a valid Request object. -32601 Method not found The method does not exist / is not available. -32602 Invalid params Invalid method parameter(s). -32603 Internal error Internal JSON-RPC error. -32000 to -32099 Server error Reserved for implementation-defined server-errors.

5 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ https://www.npmjs.com/package/express-json-rpc-router

Last updated