Domanda

ho un grande dubbio sul formato JSON il modulo Services (per Drupal 6) genera.

Quando osservo l'XML, tutto è OK.

<result is_array="true">
 <item>
  <nid>9</nid>
  <vid>9</vid>
  <type>producto</type>
 </item>
</result>

Quando osservo il JSON, vedo questo:

[
 {
  "nid": "9",
  "vid": "9",
  "type": "producto",
 }
]

Quello che mi è davvero qualcosa di simile:

[
 {
  "item":{
    "nid": "9",
    "vid": "9",
    "type": "producto",
  }
 }
]

Come posso fare questo? C'è qualche configurazione nel modulo Servizi che posso usare per modificare l'uscita, o ho bisogno di scrivere codice?
So che la funzione di rendere l'uscita JSON.

È stato utile?

Soluzione

Si dovrebbe attuare hook_services_request_postprocess_alter().

Altri suggerimenti

Come ho accennato prima, hook_services_request_postprocess_alter non vi fornirà il tipo di dati che di elaborazione. Ciò significa che il codice deve essere davvero hacky per catturare esattamente il tipo di dati di cui avete bisogno.

È meglio creare il proprio formattatore con hook_rest_server_response_formatters_alter , e utilizzarlo per il rendering dei dati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a drupal.stackexchange
scroll top