- Accueil
- Workspace
- Développement
- Créer l'API pour des modules personnalisés ONLYOFFICE Workspace
Créer l'API pour des modules personnalisés ONLYOFFICE Workspace
Introduction
Si vous avez créé votre propre module dans ONLYOFFICE et si vous l'avez ajouté à ONLYOFFICE Workspace selon ces instructions, il est également possible de créer une API de ce module.
Comment créer une API de votre propre module
- Créez le 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 de sortie dll doit être "ASC.Api.*.dll"; - Ajoutez des références requises à partir de
...\web\studio\ASC.Web.Studio\bin\
:ASC.Api.dll ASC.Web.Sample.dll
- Créez la classe
SampleApi
et mettez en œuvre l'interfaceIApiEntryPoint
:public class SampleApi : IApiEntryPoint{public string Name{get { return "sample"; }}}
- Définissez les méthodes publiques et 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 d'exécution dans la méthode, l'authentification et la validation du plan tarifaire. Les options sont présentées ci-dessous:
CreateAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "POST" requestUpdateAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "PUT" requestDeleteAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "DELETE" requestReadAttribute(string path, bool requiresAuthorization = true, bool checkPayment = true) //corresponds to the "GET" request
les paramètres
requiresAuthorization
,checkPayment
sont facultatifs et sont définistrue
par défaut. - Définissez le chemin de sortie pour le projet:
<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
. - On peut générer le projet manuellement ou à l'aide de 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.SampleApi
au fichierweb\studio\ASC.Web.Studio\web.autofac.config
:<componenttype="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 tester la méthode en utilisant la requête jQuery:
$.ajax({ type: "POST", url: "http://localhost:port/api/2.0/sample/create.json", data: {value: "create"}});
Hébergez ONLYOFFICE Workspace sur votre serveur
Articles avec le tag :
Parcourir tous les tags