web-dev-qa-db-fra.com

wp_remote_post avec le protocole ssl: //

    $response = wp_remote_post( 'ssl://securesite.com', array(
        'method' => 'POST',
        'body' => $string, // variable is set
        'timeout' => apply_filters( 'http_request_timeout', 15),
        'sslverify' => true
    ));

    error_log(print_r($response, TRUE));

    if ( is_wp_error($response) ) {
        return FALSE;
    }

    $result = wp_remote_retrieve_body($response);

Le résultat est une erreur:

[30-Aug-2011 21:53:53] WP_Error Object
(
[errors] => Array
    (
        [http_request_failed] => Array
            (
                [0] => Unsupported protocol: ssl
            )

    )

[error_data] => Array
    (
    )

)

Si j'utilise fsockopen et fgets, tout se passera bien.

On dirait que je manque un truc non documenté puisque ssl devrait être traité par wp_remote_post.

2
Dan Cameron

Où avez-vous obtenu "ssl: //" comme protocole valide?

L'avez-vous essayé avec "https: //" à la place?

1
Otto

Cela ne semble pas être une erreur venant de WP lui-même, mais est probablement généré par curl, que WP aime choisir en premier pour les requêtes réseau.

Je voudrais essayer de répliquer la demande avec curl à la main sur votre hébergement et ailleurs.

Si vous vous contentez de faire la requête réseau d'une autre manière, vous pouvez modifier pour que WP ignore le curl en tant que transport et opte pour d'autres options.

1
Rarst