Exemplo n.º 1
0
    def SendRequest(
        self,
        handler_name: str,
        args: message.Message,
    ) -> Optional[message.Message]:
        self._InitializeIfNeeded()
        method_descriptor = self.api_methods[handler_name]

        request = self.BuildRequest(method_descriptor.name, args)
        prepped_request = request.prepare()

        with requests.Session() as session:
            session.trust_env = self.trust_env
            options = session.merge_environment_settings(
                prepped_request.url, self.proxies or {}, None, self.verify,
                self.cert)
            response = session.send(prepped_request, **options)

        self._CheckResponseStatus(response)

        content = response.content
        json_str = content[len(self.JSON_PREFIX):]

        if method_descriptor.result_type_descriptor.name:
            default_value = method_descriptor.result_type_descriptor.default
            result = utils.TypeUrlToMessage(default_value.type_url)
            json_format.Parse(json_str, result, ignore_unknown_fields=True)
            return result
Exemplo n.º 2
0
    def SendRequest(self, handler_name, args):
        self._InitializeIfNeeded()
        method_descriptor = self.api_methods[handler_name]

        request = self.BuildRequest(method_descriptor.name, args)
        prepped_request = request.prepare()

        session = requests.Session()
        response = session.send(prepped_request)
        self._CheckResponseStatus(response)

        content = response.content
        json_str = content[len(self.JSON_PREFIX):]

        if method_descriptor.result_type_descriptor.name:
            default_value = method_descriptor.result_type_descriptor.default
            result = utils.TypeUrlToMessage(default_value.type_url)
            json_format.Parse(json_str, result)
            return result