code: def json_validate(schema, resp):
      
      # is this an error?
      try:
          json_validate_error(resp)
      except ValidationError:
          if json_is_exception(resp):
              # got a traceback 
              if BLOCKSTACK_TEST:
                  log.error('\n{}'.format(resp['traceback']))
  
              return {'error': 'Blockstack Core encountered an exception. See `traceback` for details', 'traceback': resp['traceback'], 'http_status': 500}
  
          if 'error' in resp and 'http_status' not in resp:
              # bad error message
              raise 
  
          # not an error.
          jsonschema.validate(resp, schema)
  
      return resp
docs: Validate an RPC response.
      The response must either take the
      form of the given schema, or it must
      take the form of {'error': ...}
  
      Returns the resp on success
      Returns {'error': ...} on validation error