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.