Schlüssel-Verifizierung

Mit der Schlüssel‑Verifizierung wird dein Schlüssel authentifiziert, bevor du zum ersten Mal die Methoden comment‑check, submit‑spam oder submit‑ham aufrufst. Dies ist der erste Aufruf, den du an Akismet senden solltest, und er ist besonders nützlich, wenn mehrere Benutzer mit eigenen Akismet‑Abonnements deine Anwendung verwenden werden.

Beachte, dass du diese Methode nicht vor jedem Aufruf an comment‑check, submit‑spam oder submit‑ham aufrufen musst; du solltest diese Anfrage nur stellen, um sicherzustellen, dass ein API‑Schlüssel gültig ist, bevor du ihn lokal speicherst.

Diese Methode wird über eine POST‑Anfrage an die folgende URL aufgerufen:

https://rest.akismet.com/1.1/verify-key

Erforderliche Parameter

api_key
Dein Akismet‑API‑Schlüssel. Du findest ihn in deinem Kontodashboard unter https://akismet.com/account/

blog
Die Startseite oder die URL der Instanz, die die Anfrage stellt. Bei einem Blog oder einem Wiki wäre dies die Startseite. Hinweis: Muss eine vollständige URI sein, einschließlich http://.

PHP-Beispiel

// Aufruf der Schlüsselüberprüfungsfunktion
akismet_verify_key('123IhrAPIKey', 'http://www.ihreblogdomainname.com/');

// Authentifiziert Ihren Akismet-API-Schlüssel
function akismet_verify_key( $key, $blog ) {
    $blog = urlencode($blog);
    $request = 'key='. $key .'&blog='. $blog;
    $host = $http_host = 'rest.akismet.com';
    $path = '/1.1/verify-key';
    $port = 443;
    $akismet_ua = "WordPress/4.4.1 | Akismet/3.1.7";
    $content_length = strlen( $request );
    $http_request  = "POST $path HTTP/1.0rn";
    $http_request .= "Host: $hostrn";
    $http_request .= "Content-Type: application/x-www-form-urlencodedrn";
    $http_request .= "Content-Length: {$content_length}rn";
    $http_request .= "User-Agent: {$akismet_ua}rn";
    $http_request .= "rn";
    $http_request .= $request;

    $response = '';
    
    if( false != ( $fs = @fsockopen( 'ssl://' . $http_host, $port, $errno, $errstr, 10 ) ) ) { 
        fwrite( $fs, $http_request );

        while( !feof( $fs ) ) {
            $response .= fgets( $fs, 1160 ); // Ein TCP-IP-Paket
        }
    
        fclose( $fs );

        $response = explode( "rnrn", $response, 2 );
    }
 
    if ( 'valid' == $response[1] ) {
        return true;
    } else {
        return false;
    }
}

Beispiel für eine erfolgreiche Antwort

Der Aufruf liefert die Antwort valid zurück, wenn der Schlüssel gültig ist.

Array (
    [0] => HTTP/1.1 200 OK
           Server: nginx
           Date: Mon, 24 Feb 2014 16:31:55 GMT
           Content-Type: text/plain; charset=utf-8
           Connection: close
           Content-length: 5
    [1] => valid
)

Beispiel für eine Fehlerantwort

Wenn der Aufruf verify‑key die Antwort invalid liefert, enthält die Antwort normalerweise einen zusätzlichen HTTP‑Header mit einigen Debug‑Informationen darüber, was genau an dem Aufruf ungültig war.

Array (
    [0] => HTTP/1.1 200 OK
           Server: nginx
           Date: Mon, 24 Feb 2014 16:34:54 GMT
           Content-Type: text/plain; charset=utf-8
           Connection: close
           X-akismet-debug-help: We were unable to parse your blog URI
           Content-length: 7
    [1] => invalid
)

Wir sind hier, um zu helfen

Wenn du einmal nicht weiterkommst oder Hilfe bei der Problembehandlung benötigst, kannst du uns jederzeit gerne kontaktieren.