- Accueil
- Workspace
- Développement
- Créer l'API pour des modules personnalisés
Créer l'API pour des modules personnalisés
Introduction
Si vous avez créé un module personnalisé pour ONLYOFFICE et si vous l'avez ajouté à ONLYOFFICE Workspace en suivant ces instructions, vous pouvez également créer une API pour ce module.
Créer une API pour un module personnalisé
- Créez un projet de Bibliothèque de classes (
ASC.Api.Sample) et placez-le dans le dossier...module\ASC.Api\ASC.Api.Sample.IMPORTANT Le nom du fichier DLL de sortie doit êtreASC.Api.*.dll; - Ajoutez les références requises à partir de
...\web\studio\ASC.Web.Studio\bin\:ASC.Api.dll ASC.Web.Sample.dll - Créez la classe
SampleApiet implémentez l'interfaceIApiEntryPoint:public class SampleApi : IApiEntryPoint { public string Name { get { return "sample"; } } } - Créez des méthodes publiques avec les attributs spécifiques:
[Attributes.Create("create", false)] public SampleClass Create(string value) { return SampleDao.Create(value); }L'attribut précise le type de méthode, le chemin par lequel cette méthode sera appelée, ainsi que l'autorisation et la vérification du plan tarifaire. Les options possibles sont présentées ci-dessous:
CreateAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "POST" request UpdateAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "PUT" request DeleteAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "DELETE" request ReadAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "GET" requestLes paramètres
requiresAuthorizationetcheckPaymentsont facultatifs et sont définis surtruepar défaut. - Définissez le chemin de sortie dans les propriétés du projet comme suit:
<OutputPath>..\..\..\web\studio\ASC.Web.Studio\bin\</OutputPath> <DocumentationFile>..\..\..\web\studio\ASC.Web.Studio\bin\ASC.Api.Sample.XML</DocumentationFile>pour que les builds soient générés dans le dossier
web\studio\ASC.Web.Studio\bin. - Le projet peut être généré manuellement ou à l'aide du générateur. Pour ce dernier, ajoutez les lignes suivantes au fichier
build\msbuild\build.proj:<ProjectToBuild Include="$(ASCDir)module\ASC.Api\ASC.Api.Sample\ASC.Api.Sample.csproj"/>et exécutez le fichier
build\Build.bat. - IMPORTANT Ajoutez
ASC.Api.Sample.SampleApiau fichierweb\studio\ASC.Web.Studio\web.autofac.config:<component type="ASC.Api.Sample.SampleApi, ASC.Api.Sample" service="ASC.Api.Interfaces.IApiEntryPoint, ASC.Api" name="sample"/> - Générez le projet, lancez le site web et testez la méthode en effectuant une requête avec jQuery:
$.ajax({ type: "POST", url: "http://localhost:port/api/2.0/sample/create.json", data: {value: "create"} });
Articles avec le tag :
Parcourir tous les tags