Utilisation de REST pour gérer des objets favoris

Vous pouvez utiliser les services REST pour afficher la liste des objets favoris. Cette fonction équivaut à utiliser la vue Objets favoris dans l'explorateur de bibliothèque.

URI :
/favorite-items
Exemple :
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm">
    <id>wcmrest:favorite-items</id>
    <title>wcmrest:favorite-items</title>
    <updated>2012-01-31T01:19:00.564Z</updated>
    <entry>
        <id>wcmrest:438dc2be-dbda-40bb-ad78-3c0f4bd11107</id>
        <title lang="en">Sample Article 2</title>
        <wcm:displayTitle lang="en">Sample Article 2</wcm:displayTitle>
        <summary lang="en"></summary>
        <wcm:name>Sample Article 2</wcm:name>
        <wcm:type>Content</wcm:type>
        <updated>2012-01-24T01:13:45.194Z</updated>
        <wcm:lastModifier>
            <wcm:distinguishedName>Replicator</wcm:distinguishedName>
        </wcm:lastModifier>
        <link label="Edit" rel="edit" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/Content/438dc2be-dbda-40bb-ad78-3c0f4bd11107" lang="en"/>
        <link label="Read" rel="alternate" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/Content/438dc2be-dbda-40bb-ad78-3c0f4bd11107" lang="en"/>
        <link label="Library" rel="library" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/item/a423287f-b0ce-4ee3-9c95-aa0939382228" lang="en"/>
        <category label="Published" scheme="wcmrest:workflowState" term="PUBLISHED" lang="en"/>
    </entry>
    <entry>
        <id>wcmrest:715cd5e8-ec36-420b-ad1c-fff80f39462b</id>
        <title lang="en">Sample Article</title>
        <wcm:displayTitle lang="en">Sample Article</wcm:displayTitle>
        <summary lang="en"></summary>
        <wcm:name>Sample Article</wcm:name>
        <wcm:type>Content</wcm:type>
        <updated>2012-01-24T01:13:47.981Z</updated>
        <wcm:lastModifier>
            <wcm:distinguishedName>Replicator</wcm:distinguishedName>
        </wcm:lastModifier>
        <link label="Edit" rel="edit" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/Content/715cd5e8-ec36-420b-ad1c-fff80f39462b" lang="en"/>
        <link label="Read" rel="alternate" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/Content/715cd5e8-ec36-420b-ad1c-fff80f39462b" lang="en"/>
        <link label="Library" rel="library" href="/wps/mycontenthandler/!ut/p/digest!PQo5Yhy68oeppWcEz2sddA/wcmrest/item/a423287f-b0ce-4ee3-9c95-aa0939382228" lang="en"/>
        <category label="Published" scheme="wcmrest:workflowState" term="PUBLISHED" lang="en"/>
    </entry>
</feed>

Paramètres

Les paramètres ci-après, avec mime-type, sont les seuls paramètres qui fonctionnent avec le flux renvoyé. Tous les autres paramètres sont ignorés.

Tableau 1. Paramètres
Paramètre Détails
sort Le paramètre sort est ajouté aux requêtes pour déterminer la façon dont les résultats de requête sont triés. Les valeurs suivantes peuvent être utilisées avec le paramètre sort :
  • author
  • created
  • modified
  • name
  • title

Les valeurs _ascending ou _descending sont ajoutées à la requête pour déterminer l'ordre de tri.

Par exemple, pour trier une requête de modèles de présentation par ordre croissant de création, utilisez :
/favorite-items?type=PresentationTemplate&sort=created_ascending
Pour trier une requête de modèles de présentation par ordre décroissant de création, utilisez :
/favorite-items?type=PresentationTemplate&sort=created_descending
Si la valeur _ascending ou _descending n'est pas spécifiée, les résultats apparaissent par ordre croissant.
type Ce paramètre est utilisé pour obtenir les objets d'un type spécifique.
Par exemple, pour interroger une liste de composants :
/favorite-items?type=LibraryHTMLComponent
page Ce paramètre est utilisé avec le paramètre pagesize pour définir l'ensemble de résultats à afficher. Par exemple, si le paramètre pagesize a pour valeur 5 et que le paramètre page a pour valeur 2, seuls les résultats 6 à 10 sont affichés.
Par exemple:
/favorite-items?type=PresentationTemplate&pagesize=5&page=2
pagesize Ce paramètre est utilisé pour limiter le nombre d'objets renvoyés par une requête à un nombre défini. Il peut être utilisé avec le paramètre page pour renvoyer des pages spécifiques de résultats.
Par exemple, pour limiter le nombre de requêtes renvoyées à 5, entrez :
/favorite-items?type=PresentationTemplate&pagesize=5

Ajout et suppression d'objets favoris

Pour les types d'objet qui possèdent un URI REST explicite, tels que les types qui peuvent être créés ou mis à jour, l'objet peut être ajouté via une opération PUT HTTP pour être mis à jour, avec la demande PUT contenant la catégorie des favoris.

Par exemple:
HTTP 1.1 PUT /wps/mycontenthandler/wcmrest/LibraryHTMLComponent/47018149-fc6b-46af-a54d-1eab89a6fed7
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm">
  ... data ...
    <category scheme="wcmrest:favorite" term="true" lang="en"/>
    ... data ...
</entry>
  • term="true" ajoute un objet à la liste des objets favoris.
  • term="false" supprime un objet de la liste des objets favoris.
  • Si le paramètre "term" est absent, l'objet est supprimé de la liste des objets favoris.

Pour les objets qui ne possèdent pas d'URI REST explicite, une demande POST HTTP peut être créée en spécifiant l'URI générique de l'objet. Pour que cela fonctionne, l'objet doit être déjà créé.

Par exemple:
Ajout :
HTTP 1.1 POST /wps/mycontenthandler/wcmrest/favorite-items/additem?item-uri=/wps/mycontenthandler/!ut/p/digest!yGIcBv5sO9Vb0EY9LLhJyQ/wcmrest/item/65a46943-ed1c-4f5d-b497-03c18886ca8e
Suppression :
HTTP 1.1 POST /wps/mycontenthandler/wcmrest/favorite-items/removeitem?item-uri=/wps/mycontenthandler/!ut/p/digest!yGIcBv5sO9Vb0EY9LLhJyQ/wcmrest/item/65a46943-ed1c-4f5d-b497-03c18886ca8e
Remarque : Le paramètre item-uri spécifie l'objet à ajouter et peut se présenter sous forme développée, comme illustré dans les exemples précédents, ou sous forme compacte. Par exemple:
wcmrest:item/65a46943-ed1c-4f5d-b497-03c18886ca8e