Estoy tratando de integrar un producto y la solicitud curl de ejemplo es la siguiente.

curl https://a.klaviyo.com/api/v1/lists -G \
  -d api_key=pk_e29b4ec921f6aed9a70eb1e6993bb5caed

Lo que no entiendo es qué significa -G y -d y cómo traduzco esta solicitud al código PHP.

1
kevinkt 23 oct. 2017 a las 07:40

3 respuestas

La mejor respuesta

-G , --get

Cuando se usa, esta opción hará

Todos los datos especificados con -d, --data, --data-binary o --data-urlencode se utilizarán en una solicitud HTTP GET en lugar de POST

Solicitar que de lo contrario se utilizaría. Los datos se agregarán a la URL con un '?' separador.

Si se usa en combinación con -I, --head, los datos POST se agregarán a la URL con una solicitud HEAD.

Si esta opción se usa varias veces, solo se usa la primera. Esto se debe a que deshacer un GET no tiene sentido, sino que debe aplicar el método alternativo que prefiera.

$ch = curl_init();

$data = array('api_key'=>"pk_e29b4ec921f6aed9a70eb1e6993bb5caed");
curl_setopt($ch, CURLOPT_URL, "https://a.klaviyo.com/api/v1/lists");
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_HTTPGET, 1);

$output = curl_exec($ch);
$info = curl_getinfo($ch);
0
AZinkey 23 oct. 2017 a las 04:57

Sólo prueba este código

 $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://a.klaviyo.com/api/v1/lists?api_key=pk_e29b4ec921f6aed9a70eb1e6993bb5caed');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $response = curl_exec($ch);     
    curl_close($ch);
    // Decode the response into a PHP associative array
    $response = json_decode($response, true);   
    echo "<pre>";print_r($response);
0
Er Nilay Parekh 23 oct. 2017 a las 04:53

-G representa una solicitud de obtención y -d son los datos pasados a la obtención

En php lo haces

file_get_contents('https://a.klaviyo.com/api/v1/lists?api_key=pk_e29b4ec921f6aed9a70eb1e6993bb5caed');
1
madalinivascu 23 oct. 2017 a las 04:48