Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Pycurl-Methode zur Überprüfung der Basis- und Digest-Authentifizierung

Python-Pycurl-Methode zur Überprüfung der Basis- und Digest-Authentifizierung

不言
不言Original
2018-05-02 13:48:112207Durchsuche

In diesem Artikel wird hauptsächlich die Methode zur Überprüfung der Basis- und Digest-Authentifizierung in Python Pycurl vorgestellt. Jetzt teile ich sie mit Ihnen und gebe sie als Referenz. Werfen wir gemeinsam einen Blick darauf

Einführung

pycurl ähnelt Pythons urllib, aber pycurl ist ein Wrapper von libcurl und schneller.

Dieser Artikel verwendet Pycurl Version 7.43.0.1.

Basisauthentifizierung unter Apache konfigurieren

Basispasswortdatei generieren

htpasswd -bc passwd.basic test 123456

mod_auth_basic aktivieren

LoadModule auth_basic_module modules/mod_auth_basic.so

Auf bestimmtes Verzeichnis konfigurieren

<Directory "D:/test/basic">
  AuthName "Basic Auth Dir"
  AuthType Basic
  AuthUserFile conf/passwd.basic
  require valid-user
</Directory>

Apache neu starten

Digest-Authentifizierung unter Apache konfigurieren

Digest-Passwortdatei generieren

htdigest -c passwd.digest "Digest Encrypt" test

Mod_auth_digest aktivieren

LoadModule auth_digest_module modules/mod_auth_digest.so

Auf das spezifische Verzeichnis konfigurieren

<Directory "D:/test/digest">
  AuthType Digest
  AuthName "Digest Encrypt" # 要与密码的域一致
  AuthDigestProvider file
  AuthUserFile conf/passwd.digest
  require valid-user
</Directory>

Apache neu starten

Basisauthentifizierung überprüfen

# -*- coding: utf-8 -*-
import pycurl
try:
  from io import BytesIO
except ImportError:
  from StringIO import StringIO as BytesIO
buffer = BytesIO()
c = pycurl.Curl()
c.setopt(c.URL, &#39;http://test/basic/&#39;)
c.setopt(c.WRITEDATA, buffer)
c.setopt(c.HTTPAUTH, c.HTTPAUTH_BASIC)
c.setopt(c.USERNAME, &#39;test&#39;)
c.setopt(c.PASSWORD, &#39;123456&#39;)
c.perform()
print(&#39;Status: %d&#39; % c.getinfo(c.RESPONSE_CODE))
print(buffer.getvalue())
c.close()

Digest-Authentifizierung überprüfen

# -*- coding: utf-8 -*-
import pycurl
try:
  from io import BytesIO
except ImportError:
  from StringIO import StringIO as BytesIO
buffer = BytesIO()
c = pycurl.Curl()
c.setopt(c.URL, &#39;http://test/digest/&#39;)
c.setopt(c.WRITEDATA, buffer)
c.setopt(c.HTTPAUTH, c.HTTPAUTH_DIGEST)
c.setopt(c.USERNAME, &#39;test&#39;)
c.setopt(c.PASSWORD, &#39;123456&#39;)
c.perform()
print(&#39;Status: %d&#39; % c.getinfo(c.RESPONSE_CODE))
print(buffer.getvalue())
c.close()


Das obige ist der detaillierte Inhalt vonPython-Pycurl-Methode zur Überprüfung der Basis- und Digest-Authentifizierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn