JSON-RPCÐÒéÊÇÒ»ÖÖÔ¶³Ì¹ý³Ìµ÷ÓÃÐÒ飬ÆäÉè¼ÆµÄÄ¿µÄ¾ÍÊÇΪÁ˼ò»¯´¦Àí¡£³£¹æµÄ´¦Àí»úÖÆÊÇÔÚÁ½¸ö¶ÔµÈ ͨÐÅʵÌåÖ®¼ä½¨Á¢µã¶ÔµãµÄÊý¾ÝÁ¬½Ó£¬ÔÚÁ¬½ÓµÄÉúÃüÖÜÆÚÄÚÒ»·½¿ÉÄܵ÷ÓÃÁíÒ»·½ÌṩµÄ·½·¨£¬ÎªÁ˵÷ÓÃÒ»¸öÔ¶³Ì ·½·¨±ØÐë·¢ËÍÒ»¸öÇëÇ󣬶ø·þÎñÆ÷¶Ë±ØÐë»Ø´ðÒ»¸öÓë¸ÃÇëÇóÏà¶ÔµÄÏìÓ¦³ý·ÇÕâ¸öÇëÇóÊÇÒ»¸ö֪ͨ¡£ 1.1 request (method invocation) ¿Í»§¶Ëͨ¹ýÏòÔ¶³Ì·þÎñ·¢ËÍÒ»¸öÇëÇóµÄ·½Ê½À´ÊµÏÖ¶ÔÔ¶³Ì·½·¨µÄµ÷Ó㬶øÕâ¸öÇëÇóÊÇÒ»¸öÓÉJSONÐÒé´®ÐÐ »¯µÄ¶ÔÏ󣬺¬ÓÐÏÂÃæÈý¸öÊôÐÔ£º ·method£º±»µ÷Ó÷½·¨Ãû£» ·params£º±»µ÷Ó÷½·¨µÄ²ÎÊýÁÐ±í£» ·id £ºÇëÇóid£¬¿ÉÒÔÊÇÈκÎÀàÐÍ£¬ÓÃÓÚÓëÏìӦƥÅä¡£ 1.2 response µ±·½·¨µ÷ÓÃÍê³Éºó£¬·þÎñÆ÷±ØÐë¸ø³öÒ»¸öÏìÓ¦£¬¶øÕâ¸öÏìÓ¦Ò²ÊÇÒ»¸öÓÐJSONÐÒé´®Ðл¯µÄ¶ÔÏó£¬Æäº¬ÓÐÈý¸öÊôÐÔ£º ·result£ºÊÇÒ»¸öÓɱ»µ÷Ó÷½·¨·µ»ØµÄ¶ÔÏó£¬Èç¹û´íÎóµ÷Ó÷½·¨Ê±£¬ÔòÆäֵΪnull£» ·error £ºÈç¹ûûÓдíÎóµ÷Ó÷½·¨£¬ÔòÆäֵΪnull£» ·id £ºÓëÒªÏìÓ¦µÄÇëÇóµÄidÏàͬ¡£ 1.3 notification Ò»¸önotificationÇëÇóÊÇÒ»¸öûÓÐÏìÓ¦µÄÌØÊâµÄÇëÇ󣬯äÒ²ÊÇÓÉJSONÐÒé´®Ðл¯µÄ¶ÔÏ󣬺¬ÓкÍÒ»°ãÇëÇóÏàͬµÄÊôÐÔ£¬µ«ÊÇÆäidӦΪnull¡£ 2.1JSON-RPC over Stream Connection
|