xuruidong commented on PR #8623:
URL: https://github.com/apache/apisix/pull/8623#issuecomment-1376828609

   > Could you provide a standalone test to show us why changing a filename can 
fix "AttributeError: module 'requests' has no attribute 'put'"?
   
   test:
   use  ssl.py
   ```
   # python ssl.py lvh.me+1.pem lvh.me+1-key.pem lvh.me
   ['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', 
'__name__', '__package__', '__path__', '__spec__', 'warnings']
   ['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', 
'__name__', '__package__', '__path__', '__spec__', 'warnings']
   Traceback (most recent call last):
     File "/usr/src/myapp/ssl.py", line 6, in <module>
       import requests
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/requests/__init__.py", line 
43, in <module>
       import urllib3
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/urllib3/__init__.py", line 
11, in <module>
       from . import exceptions
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/urllib3/exceptions.py", line 
3, in <module>
       from .packages.six.moves.http_client import IncompleteRead as 
httplib_IncompleteRead
     File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
     File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
     File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
     File "<frozen importlib._bootstrap>", line 565, in module_from_spec
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/urllib3/packages/six.py", 
line 234, in create_module
       return self.load_module(spec.name)
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/urllib3/packages/six.py", 
line 209, in load_module
       mod = mod._resolve()
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/urllib3/packages/six.py", 
line 118, in _resolve
       return _import_module(self.mod)
     File 
"/usr/src/myapp/myvenv/lib/python3.9/site-packages/urllib3/packages/six.py", 
line 87, in _import_module
       __import__(name)
     File "/usr/local/lib/python3.9/http/client.py", line 1397, in <module>
       import ssl
     File "/usr/src/myapp/ssl.py", line 18, in <module>
       resp = requests.put("http://127.0.0.1:9180/apisix/admin/ssls/1";, json={
   AttributeError: partially initialized module 'requests' has no attribute 
'put' (most likely due to a circular import)
   ```
   
   use  create-ssl.py
   ```
   # mv ssl.py create-ssl.py
   (myvenv) root@ap04:/usr/src/myapp# python create-ssl.py lvh.me+1.pem 
lvh.me+1-key.pem lvh.me
   ['ConnectTimeout', 'ConnectionError', 'DependencyWarning', 
'FileModeWarning', 'HTTPError', 'JSONDecodeError', 'NullHandler', 
'PreparedRequest', 'ReadTimeout', 'Request', 'RequestException', 
'RequestsDependencyWarning', 'Response', 'Session', 'Timeout', 
'TooManyRedirects', 'URLRequired', '__author__', '__author_email__', 
'__build__', '__builtins__', '__cached__', '__cake__', '__copyright__', 
'__description__', '__doc__', '__file__', '__license__', '__loader__', 
'__name__', '__package__', '__path__', '__spec__', '__title__', '__url__', 
'__version__', '_check_cryptography', '_internal_utils', 'adapters', 'api', 
'auth', 'certs', 'chardet_version', 'charset_normalizer_version', 
'check_compatibility', 'codes', 'compat', 'cookies', 'delete', 'exceptions', 
'get', 'head', 'hooks', 'logging', 'models', 'options', 'packages', 'patch', 
'post', 'put', 'request', 'session', 'sessions', 'ssl', 'status_codes', 
'structures', 'urllib3', 'utils', 'warnings']
   200
   
{"key":"\/apisix\/ssls\/1","value":{"type":"server","create_time":1672889225,"cert":"-----BEGIN
 
CERTIFICATE-----\nMIIEKjCCApKgAwIBAgIQJ7+tTZRECIp1\/rZvizFsADANBgkqhkiG9w0BAQsFADBl\nMR4wHAYDVQQKExVta2NlcnQgZGV2ZWxvcG1lbnQgQ0ExHTAbBgNVBAsMFHJvb3RA\n\/8xj78nya58YZ6oaf+EDVqA+JPhbAZEFC+U9+BYLmr5eB31DNc\nNfeqlIybQ1xrj42QRUTGPIwfl6lwGu4L63WKVfSOOEWkx1yB\/x5vUYmWK4Vub+Gs\nrwqoluFp44oNMY+uy9w=\n-----END
 
CERTIFICATE-----\n","id":"1","status":1,"key":"YnwfPfngS\/3wJFDtm8aCDkPmoYaHW5Qh60oD0cE2k8fEjtgy1JuHR+W2p5KI2dm5knsWwGRTTNwLPpglGsDSg2OcbVzkUNQEFMpZqGNMTDCMBhlpTZg=","snis":["lvh.me"],"update_time":1673334815}}
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to