Jetons d'aperçu
Un jeton d'aperçu est une chaîne chiffrée qui encapsule un ensemble d'options d'aperçu et de restrictions sur le moment et l'endroit où le jeton peut être utilisé. Tout utilisateur autorisé à accéder à votre serveur et ayant le jeton d'aperçu peut effectuer des actions d'aperçu dans le magasin dans lequel le jeton est généré, avec les options d'aperçu spécifiées.Par exemple, un utilisateur peut effectuer une demande de service en mode aperçu ou accéder à une URL d'aperçu générée pour prévisualiser un magasin dans un segment de clientèle particulier.
Create preview token service
Les options d'aperçu et les restrictions peuvent être définies avec les paramètres suivants lors de l'appel du service Create preview token :
- démarrer
- Facultatif : Date et heure à laquelle le jeton d'aperçu commence à être valide. L'heure est au format "JJ/MM/AAAA HH:MM:SS".
- timeZoneId
- Facultatif : Doit être un ID de fuseau horaire Java valide.
- état
- Facultatif : Détermine si le temps doit être statique en mode aperçu. Si true, le temps est statique. Si false, le temps s'écoule.
- invstatus
- Facultatif :
- 0 - utiliser les niveaux de stock de la base de données.
- 1 - définir tous les résultats de filtre de stock sur true.
- -1 - définir tous les résultats de filtre de stock sur false.
- includedMemberGroupIds
- Facultatif : Aperçu en tant qu'utilisateur dans ces segments de clientèle. Liste des ID de groupe de membres séparés par des virgules.
- workspaceId
- Facultatif : ID de l'espace de travail.
- taskGroupId
- Facultatif : ID du groupe de tâches.
- taskId
- Facultatif : ID de la tâche.
- tokenLife
- Facultatif : Durée de vie du jeton d'aperçu en minutes. Le jeton d'aperçu expire et ne peut pas être utilisé après ce temps défini.
- dateDébut
- Facultatif : Date/heure de début du jeton d'aperçu sous la forme "YYYY/MM/DD HH:MM:SS".
- dateFin
- Facultatif : Date/heure de fin du jeton d'aperçu sous la forme "YYYY/MM/DD HH:MM:SS". Cette valeur a la priorité par rapport au paramètre tokenLife.
- mot_de_passe
- Facultatif : Mot de passe pour accéder à une URL d'aperçu générée.
Une fois que le service create preview token encapsule les options et les restrictions d'aperçu, l'instruction PreviewTokenServiceCmdImpl crée le jeton d'aperçu et renvoie le jeton d'aperçu en tant que propriété de réponse nommée "previewToken". Le jeton d'aperçu est stocké dans la table de base de données PREVIEWTOKEN.
Exemples de demandes de services et réponses
Pour les développeurs qui souhaitent personnaliser les applications RESTful pour prévisualiser le contenu à l'aide des services BOD et REST, reportez-vous aux exemples de codes suivants pour comprendre les formats de demande de services et de réponse :
- Exemple de demande AJAX create preview token :
https://localhost:8000/webapp/wcs/tools/servlet/A jaxPreviewTokenCreate?storeId=10001&start=2013%2F01%2F01+00%3A00%3A00& timeZoneId=America%2FNew_York&status=true&invstatus=0&includedMemberGroupIds=10001%2C10002& workspaceId=10001&taskId=10001&tokenLife=60&password=passw0rd - Exemple de réponse AJAX create preview token :
{ "previewToken": "iuJOiPLnTn0=" } - Pour qu'un service BOD génère un jeton d'aperçu, utilisez un BOD ProcessPerson avec
actionCode="CreatePreviewToken". Voici un exemple de demande de service BOD create preview token :<_mbr:ProcessPerson xmlns:_mbr="http://www.ibm.com/xmlns/prod/commerce/9/member" xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation" xmlns:oa="http://www.openapplications.org/oagis/9" versionID="6.0.0.4" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance"> <oa:ApplicationArea xsi:type="_wcf:ApplicationAreaType"> <oa:CreationDateTime></oa:CreationDateTime> <oa:BODID></oa:BODID> <_wcf:BusinessContext intent="Authoring"> <_wcf:ContextData name="storeId">10001</_wcf:ContextData> </_wcf:BusinessContext> </oa:ApplicationArea> <_mbr:DataArea> <oa:Process> <oa:ActionCriteria> <oa:ActionExpression actionCode="CreatePreviewToken" expressionLanguage="_wcf:XPath"/> </oa:ActionCriteria> </oa:Process> <_mbr:Person> <_mbr:Credential> <_wcf:UserData> <_wcf:UserDataField name="start">2013/01/01 00:00:00</_wcf:UserDataField> <_wcf:UserDataField name="timeZoneId">America/New_York</_wcf:UserDataField> <_wcf:UserDataField name="status">true</_wcf:UserDataField> <_wcf:UserDataField name="invstatus">0</_wcf:UserDataField> <_wcf:UserDataField name="includedMemberGroupIds">10001,10002</_wcf:UserDataField> <_wcf:UserDataField name="workspaceId">10001</_wcf:UserDataField> <_wcf:UserDataField name="taskGroupId">10001</_wcf:UserDataField> <_wcf:UserDataField name="taskId">10001</_wcf:UserDataField> <_wcf:UserDataField name="tokenLife">60</_wcf:UserDataField> <_wcf:UserDataField name="password">passw0rd</_wcf:UserDataField> </_wcf:UserData> </_mbr:Credential> <_mbr:PersonalProfile/> <_mbr:ContactInfo> <_wcf:ContactInfoIdentifier> <_wcf:ExternalIdentifier/> </_wcf:ContactInfoIdentifier> <_wcf:Address/> </_mbr:ContactInfo> </_mbr:Person> </_mbr:DataArea> </_mbr:ProcessPerson> - Exemple de réponse de service (BOD) create preview token :
<_mbr:AcknowledgePerson xmlns:Oagis9="http://www.openapplications.org/oagis/9" xmlns:_mbr="http://www.ibm.com/xmlns/prod/commerce/9/member" xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Oagis9:ApplicationArea xsi:type="_wcf:ApplicationAreaType"> <Oagis9:CreationDateTime></Oagis9:CreationDateTime> <Oagis9:BODID></Oagis9:BODID> </Oagis9:ApplicationArea> <_mbr:DataArea> <Oagis9:Acknowledge> <Oagis9:OriginalApplicationArea> <Oagis9:CreationDateTime></Oagis9:CreationDateTime> <Oagis9:BODID></Oagis9:BODID> </Oagis9:OriginalApplicationArea> </Oagis9:Acknowledge> <_mbr:Person> <_mbr:Credential> <_wcf:UserData> <_wcf:UserDataField name="previewToken">iuJOiPLnTn0=</_wcf:UserDataField> </_wcf:UserData> </_mbr:Credential> </_mbr:Person> </_mbr:DataArea> </_mbr:AcknowledgePerson> - Pour qu'un service REST génère un jeton d'aperçu, utilisez une méthode HTTP POST avec une URL qui suit le format "
store/storeid/previewToken". Voici un exemple de demande de service REST create preview token :Post /wcs/resources/store/10001/previewToken HTTPS/1.1 Host: wcstestserver.raleigh.ibm.com Content-Type: application/json { "start": "2013/01/01 20:30:00", "timeZoneId": "America/New_York", "status": "true", "invstatus": "0", "includedMemberGroupIds": "10001,10002", "workspaceId": "10001", "taskGroupId": "10001", "taskId": "10001", "tokenLife": "60", "password": "passw0rd" } - Exemple de réponse de service (REST) create preview token :
HTTPS/1.1 201 Created Content-Type: application/json { "previewToken": "iuJOiPLnTn0=" }
Sécurité des jetons d'aperçu
Les fonctions de sécurité suivantes sont en place pour les jetons d'aperçu :- Par défaut, l'instruction/le service créer jeton d'aperçu est limité(e) par le contrôle d'accès aux utilisateurs professionnels ayant des rôles d'utilisateur administratif.
- Un jeton d'aperçu ne fonctionne que dans le magasin où il est généré.
- Un jeton d'aperçu est révoqué lorsqu'il est envoyé sur HTTP. Le jeton doit être envoyé sur HTTPS.