Estoy construyendo una integración de mailchimp y requieren una llamada POST con código JSON.
No, estoy usando este código que realmente funciona :
$data = wp_remote_post($url, array(
'headers' => array('Content-Type' => 'application/json; charset=utf-8'),
'body' => json_encode($array_with_parameters),
'method' => 'POST'
));
Pero, devuelve una advertencia de PHP
Advertencia: http_build_query (): se espera que el parámetro 1 sea Array u Object. Valor incorrecto dado en ../wp-includes/Requests/Transport/cURL.php en la línea 507
¿Cómo evitarlo?
Intenté usar la matriz simple en el índice 'body' pero MailChimp devuelve un error de análisis JSON.
json
http-api
plugin-mailchimp
wp-remote-post
codificador
fuente
fuente
Respuestas:
Intente configurar el
data_format
parámetro en su solicitud de la siguiente manera:Parece que el formato puede estar predeterminado
query
, en cuyo caso WordPress intenta formatear los datos usandohttp_build_query
, lo que le está dando problemas ya que ya está formateando el cuerpo como una cadena. Aquí está el check-in relevantewp-includes/class-http.php
:Como su error proviene de la línea 507 de
wp-includes/Requests/Transport/cURL.php
, podemos ver que esta es la llamada raíz ahttp_build_query
:fuente