当前位置: 首页>>代码示例>>Python>>正文


Python _cpcompat.HTTPSConnection类代码示例

本文整理汇总了Python中cherrypy._cpcompat.HTTPSConnection的典型用法代码示例。如果您正苦于以下问题:Python HTTPSConnection类的具体用法?Python HTTPSConnection怎么用?Python HTTPSConnection使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了HTTPSConnection类的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_no_content_length

    def test_no_content_length(self):
        # "The presence of a message-body in a request is signaled by the
        # inclusion of a Content-Length or Transfer-Encoding header field in
        # the request's message-headers."
        #
        # Send a message with neither header and no body. Even though
        # the request is of method POST, this should be OK because we set
        # request.process_request_body to False for our handler.
        if self.scheme == "https":
            c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
        else:
            c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
        c.request("POST", "/no_body")
        response = c.getresponse()
        self.body = response.fp.read()
        self.status = str(response.status)
        self.assertStatus(200)
        self.assertBody(ntob('Hello world!'))

        # Now send a message that has no Content-Length, but does send a body.
        # Verify that CP times out the socket and responds
        # with 411 Length Required.
        if self.scheme == "https":
            c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
        else:
            c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
        c.request("POST", "/")
        response = c.getresponse()
        self.body = response.fp.read()
        self.status = str(response.status)
        self.assertStatus(411)
开发者ID:Vungle,项目名称:cherrypy-3.2.4,代码行数:31,代码来源:test_http.py

示例2: test_no_content_length

    def test_no_content_length(self):
        # "The presence of a message-body in a request is signaled by the
        # inclusion of a Content-Length or Transfer-Encoding header field in
        # the request's message-headers."
        #
        # Send a message with neither header and no body. Even though
        # the request is of method POST, this should be OK because we set
        # request.process_request_body to False for our handler.
        c = self.make_connection()
        c.request('POST', '/no_body')
        response = c.getresponse()
        self.body = response.fp.read()
        self.status = str(response.status)
        self.assertStatus(200)
        self.assertBody(ntob('Hello world!'))

        # Now send a message that has no Content-Length, but does send a body.
        # Verify that CP times out the socket and responds
        # with 411 Length Required.
        if self.scheme == 'https':
            c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
        else:
            c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))

        # `_get_content_length` is needed for Python 3.6+
        with mock.patch.object(c, '_get_content_length', lambda body, method: None, create=True):
            # `_set_content_length` is needed for Python 2.7-3.5
            with mock.patch.object(c, '_set_content_length', create=True):
                c.request('POST', '/')

        response = c.getresponse()
        self.body = response.fp.read()
        self.status = str(response.status)
        self.assertStatus(411)
开发者ID:rvaidun,项目名称:tttorunaments,代码行数:34,代码来源:test_http.py

示例3: test_malformed_request_line

 def test_malformed_request_line(self):
     if getattr(cherrypy.server, 'using_apache', False):
         return self.skip('skipped due to known Apache differences...')
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c._output(ntob('GET /'))
     c._send_output()
     if hasattr(c, 'strict'):
         response = c.response_class(c.sock, strict=c.strict, method='GET')
     else:
         response = c.response_class(c.sock, method='GET')
     response.begin()
     self.assertEqual(response.status, 400)
     self.assertEqual(response.fp.read(22), ntob('Malformed Request-Line'))
     c.close()
开发者ID:connoryang,项目名称:dec-eve-serenity,代码行数:17,代码来源:test_http.py

示例4: getpage

 def getpage():
     host = '%s:%s' % (self.interface(), self.PORT)
     if self.scheme == 'https':
         c = HTTPSConnection(host)
     else:
         c = HTTPConnection(host)
     try:
         c.putrequest('GET', '/')
         c.endheaders()
         response = c.getresponse()
         body = response.read()
         self.assertEqual(response.status, 200)
         self.assertEqual(body, ntob("Hello world!"))
     finally:
         c.close()
     success.append(True)
开发者ID:rayhebard,项目名称:cherrypy,代码行数:16,代码来源:test_refleaks.py

示例5: request

 def request(index):
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     for i in range(request_count):
         c.putrequest('GET', '/')
         for k, v in cookies:
             c.putheader(k, v)
         c.endheaders()
         response = c.getresponse()
         body = response.read()
         if response.status != 200 or not body.isdigit():
             errors.append((response.status, body))
         else:
             data_dict[index] = max(data_dict[index], int(body))
开发者ID:Saladpact,项目名称:HTPC-Manager,代码行数:16,代码来源:test_session.py

示例6: test_no_content_length

 def test_no_content_length(self):
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.request('POST', '/no_body')
     response = c.getresponse()
     self.body = response.fp.read()
     self.status = str(response.status)
     self.assertStatus(200)
     self.assertBody(ntob('Hello world!'))
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.request('POST', '/')
     response = c.getresponse()
     self.body = response.fp.read()
     self.status = str(response.status)
     self.assertStatus(411)
开发者ID:connoryang,项目名称:dec-eve-serenity,代码行数:20,代码来源:test_http.py

示例7: test_malformed_request_line

    def test_malformed_request_line(self):
        if getattr(cherrypy.server, "using_apache", False):
            return self.skip("skipped due to known Apache differences...")

        # Test missing version in Request-Line
        if self.scheme == 'https':
            c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
        else:
            c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
        c._output(ntob('GET /'))
        c._send_output()
        if hasattr(c, 'strict'):
            response = c.response_class(c.sock, strict=c.strict, method='GET')
        else:
            # Python 3.2 removed the 'strict' feature, saying:
            # "http.client now always assumes HTTP/1.x compliant servers."
            response = c.response_class(c.sock, method='GET')
        response.begin()
        self.assertEqual(response.status, 400)
        self.assertEqual(response.fp.read(22), ntob("Malformed Request-Line"))
        c.close()
开发者ID:Vungle,项目名称:cherrypy-3.2.4,代码行数:21,代码来源:test_http.py

示例8: test_post_multipart

 def test_post_multipart(self):
     alphabet = 'abcdefghijklmnopqrstuvwxyz'
     contents = ''.join([ c * 65536 for c in alphabet ])
     files = [('file', 'file.txt', contents)]
     content_type, body = encode_multipart_formdata(files)
     body = body.encode('Latin-1')
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest('POST', '/post_multipart')
     c.putheader('Content-Type', content_type)
     c.putheader('Content-Length', str(len(body)))
     c.endheaders()
     c.send(body)
     response = c.getresponse()
     self.body = response.fp.read()
     self.status = str(response.status)
     self.assertStatus(200)
     self.assertBody(', '.join([ '%s * 65536' % c for c in alphabet ]))
开发者ID:connoryang,项目名称:dec-eve-serenity,代码行数:20,代码来源:test_http.py

示例9: test_malformed_header

 def test_malformed_header(self):
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest('GET', '/')
     c.putheader('Content-Type', 'text/plain')
     c._output(ntob('Re, 1.2.3.4#015#012'))
     c.endheaders()
     response = c.getresponse()
     self.status = str(response.status)
     self.assertStatus(400)
     self.body = response.fp.read(20)
     self.assertBody('Illegal header line.')
开发者ID:connoryang,项目名称:dec-eve-serenity,代码行数:14,代码来源:test_http.py

示例10: test_malformed_header

    def test_malformed_header(self):
        if self.scheme == "https":
            c = HTTPSConnection("%s:%s" % (self.interface(), self.PORT))
        else:
            c = HTTPConnection("%s:%s" % (self.interface(), self.PORT))
        c.putrequest("GET", "/")
        c.putheader("Content-Type", "text/plain")
        # See http://www.cherrypy.org/ticket/941
        c._output(ntob("Re, 1.2.3.4#015#012"))
        c.endheaders()

        response = c.getresponse()
        self.status = str(response.status)
        self.assertStatus(400)
        self.body = response.fp.read(20)
        self.assertBody("Illegal header line.")
开发者ID:429eagle,项目名称:BitTorrent.bundle,代码行数:16,代码来源:test_http.py

示例11: test_post_multipart

    def test_post_multipart(self):
        alphabet = "abcdefghijklmnopqrstuvwxyz"
        # generate file contents for a large post
        contents = "".join([c * 65536 for c in alphabet])

        # encode as multipart form data
        files = [("file", "file.txt", contents)]
        content_type, body = encode_multipart_formdata(files)
        body = body.encode("Latin-1")

        # post file
        if self.scheme == "https":
            c = HTTPSConnection("%s:%s" % (self.interface(), self.PORT))
        else:
            c = HTTPConnection("%s:%s" % (self.interface(), self.PORT))
        c.putrequest("POST", "/post_multipart")
        c.putheader("Content-Type", content_type)
        c.putheader("Content-Length", str(len(body)))
        c.endheaders()
        c.send(body)

        response = c.getresponse()
        self.body = response.fp.read()
        self.status = str(response.status)
        self.assertStatus(200)
        self.assertBody(", ".join(["%s * 65536" % c for c in alphabet]))
开发者ID:429eagle,项目名称:BitTorrent.bundle,代码行数:26,代码来源:test_http.py


注:本文中的cherrypy._cpcompat.HTTPSConnection类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。