Merci pour votre réponse rapide. Voici mon code ci-dessous. Je suis encore débutant en drupal 8, donc si vous pouvez me citer quelques type d'objets pour faire la requête au web service ?!! Ou et comment je peux traiter la réponse de la requête ?
namespace Drupal\baco\Plugin\rest\resource;
use Drupal\rest\Plugin\ResourceBase;
use Drupal\rest\ResourceResponse;
use Drupal\node\Entity\Node;
use Symfony\Component\HttpFoundation\JsonResponse;
use Drupal\headless_drupal\ResponseHelper;
use vendor\Symfony\Component\HttpFoundation;
use vendor\GuzzleHttp\psr7\src;
/**
* Provides a Demo Resource
*
* @RestResource(
* id = "baco_resource",
* label = @Translation("Baco Resource"),
* uri_paths = {
* "canonical" = "/baco_rest_api/baco_resource"
* }
* )
*/
/*list field values for a content type */
class BacoResource extends ResourceBase {
/**
* Responds to entity GET requests.
* @return \Drupal\rest\ResourceResponse
*/
public function get() {
$url = "http://localhost/bacco/mapage?idfiche=7,8,9,18,77";
/*** A remplacer***/
$arg = explode('=',$url);
$liste = explode(',',$arg[1]);
foreach ($liste as $key => $value ) {
if (isset($value) & is_numeric($value) & ($value!=NULL) )
{
$query = \Drupal::entityQuery('node')
->condition('type','reponse_type')
->exists('nid')
->condition('nid',$liste,'IN')
->condition('status', 1);
$group = $query->orConditionGroup()
->condition('field_question_reponse','%ponse', 'LIKE')
->condition('field_question_reponse','Que%','Like')
->condition('field_question_reponse','tion','CONTAINS');
$fiche = $query->condition($group)->execute();
$nodes = \Drupal::entityTypeManager()->getStorage('node')->loadMultiple($fiche);
}
$json_array=[];
foreach ($nodes as $node) {
$json_array[$node->get("nid")->value] = $j_array = array(
'title' => $node->get("title")->value,
'Résumé de la fiche' => $node->get("field_resume_de_la_fiche")->value,
'Lien fiche' => $node->get("field_lien_fiche")->value,
'Réponse-type' => $node->get("field_reponse_type")->value,
'Date de publication' => $node->get("field_date_de_publication")->value,
'Type fiche' => "Réponse Type",
);
}
return new ResourceResponse($json_array);
}
}
}
Résultat
{
"7": {
"title": "fiche1",
"Résumé de la fiche": "fiche de remboursement",
"Lien fiche": null,
"Réponse-type": "fiche de remboursement uashnkajsh",
"Date de publication": null,
"Type fiche": "Réponse Type"
},
"8": {
"title": "fiche 2",
"Résumé de la fiche": "fiche 2",
"Lien fiche": null,
"Réponse-type": "fiche 2 fiche 2fiche 2fiche 2fiche 2fiche 2fiche 2 fiche 2fiche 2 fiche 2fiche 2",
"Date de publication": "2018-03-30",
"Type fiche": "Réponse Type"
},
Merci pour votre réponse rapide. Voici mon code ci-dessous. Je suis encore débutant en drupal 8, donc si vous pouvez me citer quelques type d'objets pour faire la requête au web service ?!! Ou et comment je peux traiter la réponse de la requête ?
Résultat