Utilisation de REST avec des dossiers
Vous pouvez utiliser le service REST de Web Content Manager pour créer, lire, mettre à jour et supprimer des dossiers. Vous pouvez également utiliser le service REST de Web Content Manager pour rechercher des dossiers prédéfinis dans une bibliothèque.
Recherche de dossiers prédéfinis
Vous pouvez obtenir la liste des dossiers prédéfinis dans une bibliothèque en envoyant une demande GET à l'URI suivant :
/Library/library-id/preset-folders
Par exemple:
HTTP/1.1 /wps/mycontenthandler/wcmrest/Library/
Accept: application/atom+xml
HTTP/1.1 200 OK
Content-Type: application/atom+xml
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
<id>wcmrest:Library/790b8ca6-5d89-4f37-9052-783dd580f860/preset-folders</id>
<title>wcmrest:Library/790b8ca6-5d89-4f37-9052-783dd580f860/preset-folders</title>
<updated>2014-06-27T02:30:24.312Z</updated>
<entry>
<id>wcmrest:fd169c35-f35b-45da-b5cb-6dab73330142</id>
<title xml:lang="fr-fr">Content</title>
<wcm:name>Content</wcm:name>
<wcm:type>PresetFolder</wcm:type>
<updated>2014-06-13T02:27:49.631Z</updated>
<link rel="library" href="/wps/mycontenthandler/wcmrest/Library/790b8ca6-5d89-4f37-9052-783dd580f860" label="Library"/>
<link rel="alternate" href="/wps/mycontenthandler/wcmrest/Folder/fd169c35-f35b-45da-b5cb-6dab73330142" label="Read"/>
</entry>
<entry>
<id>wcmrest:f5f8964b-7e47-4427-aca6-46982125f123</id>
<title xml:lang="fr-fr">Taxonomies</title>
<wcm:name>Taxonomies</wcm:name>
<wcm:type>PresetFolder</wcm:type>
<updated>2014-06-13T02:27:49.629Z</updated>
<link rel="library" href="/wps/mycontenthandler/wcmrest/Library/790b8ca6-5d89-4f37-9052-783dd580f860" label="Library"/>
<link rel="alternate" href="/wps/mycontenthandler/wcmrest/Folder/f5f8964b-7e47-4427-aca6-46982125f123" label="Read"/>
</entry>
<entry>
<id>wcmrest:b7fd466d-d430-4a72-bb33-e8733f9b47e8</id>
<title xml:lang="fr-fr">Components</title>
<wcm:name>Components</wcm:name>
<wcm:type>PresetFolder</wcm:type>
<updated>2014-06-13T02:27:49.631Z</updated>
<link rel="library" href="/wps/mycontenthandler/wcmrest/Library/790b8ca6-5d89-4f37-9052-783dd580f860" label="Library"/>
<link rel="alternate" href="/wps/mycontenthandler/wcmrest/Folder/b7fd466d-d430-4a72-bb33-e8733f9b47e8" label="Read"/>
</entry>
... some entries elided ...
</feed>Créer
Vous pouvez créer un dossier en envoyant une demande POST à l'URI suivant avec une entrée Atom représentant le dossier :
/Folder
Par exemple:
HTTP/1.1 POST /wps/mycontenthandler/wcmrest/Folder
Content-Type: application/atom+xml
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
<wcm:name>Design Components</wcm:name>
<link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5-10"/>
</entry>
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
<id>wcmrest:5def4f6f-0dd9-49ca-b954-706f8ceb7373</id>
<title xml:lang="fr-fr">test create components folder</title>
<summary xml:lang="fr-fr"></summary>
<wcm:name>test create components folder</wcm:name>
<wcm:type>Folder</wcm:type>
<updated>2014-06-27T02:39:58.735Z</updated>
<wcm:created>2014-06-27T02:39:58.733Z</wcm:created>
<wcm:lastModifier>
<wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
<uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
<name>wpsadmin</name>
</wcm:lastModifier>
<wcm:creator>
<wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
<uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
<name>wpsadmin</name>
</wcm:creator>
<link rel="self" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Read"/>
<link rel="edit" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Edit"/>
<link rel="delete" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Delete"/>
<link rel="access-control" href="/wps/mycontenthandler/ac/access:oid:Z6QReDeL1PA6JH66JDCMM0643PIJMG6PPO2MM8CP9D8JMS6GHDC6SCC5JOEJPS6J1" xml:lang="fr-fr" label="Access Control"/>
<link rel="library" href="/wps/mycontenthandler/wcmrest/Library/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5" xml:lang="fr-fr" label="Library"/>
<link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5-10" xml:lang="fr-fr" label="Parent"/>
<link rel="versions" href="/wps/mycontenthandler/wcmrest/item/5def4f6f-0dd9-49ca-b954-706f8ceb7373/versions" xml:lang="fr-fr" label="Versions"/>
<category scheme="wcmrest:favorite" term="false" xml:lang="fr-fr"/>
</entry>
Mettre à jour
Vous pouvez mettre à jour un dossier en envoyant une demande PUT à l'URI suivant avec une entrée Atom incluant les zones de l'objet qui doivent être modifiées:
/Folder/folder-id
Par exemple:
HTTP/1.1 PUT /wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373
Content-Type: application/atom+xml
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
... some content elided ...
<wcm:name>The Folder Name has Chenged</wcm:name>
<!-- Note that the parent has changed. This will cause the folder to be moved. -->
<link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/aceaf85a-48a8-45f7-a6cc-343ace84f337" xml:lang="fr-fr" label="Parent"/>
... some content elided ...
</entry>
Lire
Vous pouvez lire un dossier en envoyant une demande GET à l'URI suivant :
/Folder/folder-id
Par exemple:
HTTP/1.1 GET /wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373
Accept: application/atom+xml
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:wcm="http://www.ibm.com/xmlns/wcm/8.0">
<id>wcmrest:5def4f6f-0dd9-49ca-b954-706f8ceb7373</id>
<title xml:lang="fr-fr">test create components folder</title>
<summary xml:lang="fr-fr"></summary>
<wcm:name>test create components folder</wcm:name>
<wcm:type>Folder</wcm:type>
<updated>2014-06-27T02:39:58.735Z</updated>
<wcm:created>2014-06-27T02:39:58.733Z</wcm:created>
<wcm:lastModifier>
<wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
<uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
<name>wpsadmin</name>
</wcm:lastModifier>
<wcm:creator>
<wcm:distinguishedName>uid=wpsadmin,o=defaultWIMFileBasedRealm</wcm:distinguishedName>
<uri>/wps/mycontenthandler/um/users/profiles/Z9eAe5JOE3O46N1P0JM06J9OCJMG64BC6MM472RCCJMK62JD66J57OHDC3OC6N1</uri>
<name>wpsadmin</name>
</wcm:creator>
<link rel="self" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Read"/>
<link rel="edit" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Edit"/>
<link rel="delete" href="/wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373" xml:lang="fr-fr" label="Delete"/>
<link rel="access-control" href="/wps/mycontenthandler/ac/access:oid:Z6QReDeL1PA6JH66JDCMM0643PIJMG6PPO2MM8CP9D8JMS6GHDC6SCC5JOEJPS6J1" xml:lang="fr-fr" label="Access Control"/>
<link rel="library" href="/wps/mycontenthandler/wcmrest/Library/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5" xml:lang="fr-fr" label="Library"/>
<link rel="parent" href="/wps/mycontenthandler/wcmrest/Folder/17fe1ab3-ba6a-4769-b5f0-a2cb2f91ebb5-10" xml:lang="fr-fr" label="Parent"/>
<link rel="versions" href="/wps/mycontenthandler/wcmrest/item/5def4f6f-0dd9-49ca-b954-706f8ceb7373/versions" xml:lang="fr-fr" label="Versions"/>
<category scheme="wcmrest:favorite" term="false" xml:lang="fr-fr"/>
</entry>Supprimer
Vous pouvez supprimer un dossier en envoyant une demande DELETE à l'URI suivant :
/Folder/folder-id
HTTP/1.1 DELETE /wps/mycontenthandler/wcmrest/Folder/5def4f6f-0dd9-49ca-b954-706f8ceb7373 HTTP/1.1 200 OK