-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME.md.bak
More file actions
91 lines (56 loc) · 5.55 KB
/
Copy pathREADME.md.bak
File metadata and controls
91 lines (56 loc) · 5.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# Перший Backend плагін
> Для розробки знадобиться IDE з підтримкою написання коду на мові програмування C#. Для написання данної станні вкикористовувалась [VisualStudio](https://visualstudio.microsoft.com/vs/).
> Також необхідна наявність [dotnet CLI](https://docs.microsoft.com/ru-ru/dotnet/core/tools/dotnet)
## Клонування репозиторію
Розробку першого плагіна розпочнемо з клюнування GIT репозиторію **[
tutorial-backend-plugin](https://github.com/mef-dev/tutorial-backend-plugin)**.
```
git clone https://github.com/mef-dev/tutorial-backend-plugin.git
```
## Огляд параметрів
Після завантаження, та відкриття проекту можемо оглянути вміст.

Унікальним ідентифікатором на платформі є назва проекту, а також назва сутності (entity). При створенні власного проекту перейменовуємо проект і модифікуємо назву сутності.
## Збірка плагіна
Для збірки плагіна можна скористатися командою
```
dotnet publish -o bin\Deploy --force
```
Та заархівувати вміст теки `bin\Deploy`.
Або скористатися готовим скриптом для Windows `build_for_deploy.cmd`
## Реєстрація плагіну
Для початку перейдемо на сторінку створення плагіну.

Вона знаходиться в пункті меню `Плагіни`
Після чого ми попадаємо на сторінку створення плагінів.
Аліас- назва предметної області плагіну. Ім'я- назва плагіну. Вооодимо ці данні, і переходимо до типу. У платформі існує 4 основних типи плагінів. Про відмінності між ними написано в блоці допомоги. Зараз нас цікавить тип `Service`- плагін, що містить лише API складову, без користувацької конфінурації. Вибираємо його.
Після вибору у нас активувався `Backend` блок. Він містить лише одне поле `PluginMefName`. Це є назва нашого проекту. Вводимо назву з репозиторію, після чого нажимаємо кнопку **Зберегти**.
## Завантаження плагіну
Для завантаження готового ZIP-архіву плагіну на платформу, необхідно, на сторінці конфігерації в блоці *Backend* натиснути кнопук **Завантажити нову версію**.

Після завантаження, в дропдауні необхідно вибрати необхідну версію та натиснути кнопку **Зберегти**
## Перевірка працездатності
Провіряти роботу API плагінів можна любою програмою-сніфером. В данному випадку використовуватиметься *Postman*.
Для відправлення запитів потрібно, щоб сніфер відправляв запити з токеном користувача в платформі. Отримати його можна через `devtool` в розділі `Storage`
### Базова перевірка працездатності
В межах платфори іcнує ендпоінт для перевірки працездатності плагіна:
```
https://preview.mef.dev/api/v1/<alias>/plugins/<PluginMefName>/version.json?detaillevel=detailed
```

У випадку схожого результату, важ плагін успішно заантажений на платформу, та готовий до роботи.
### Запити до плагіна
Надсилання запитів до плагіна продемонструємо на прикладі GET запитів.
Для надсилання запитів використовується шаблон:
```
https://preview.mef.dev/api/v1/<alias>/<PluginMefName>
```
При цьому в тіло запиту можна добавляти будь-які параметри\хедери\поля, проте варто відобразити їх у вхіній моделі плагіна.

### Запити до екшенів
Екшини можуть сприймати лише POST запити, Які формуються за формулою:
```
https://preview.mef.dev/api/v1/<alias>/<PluginMefName>/actions/<ActionName>.json
```

> Реалізацію цих запитів також можна побачити в Ангуляр-аплікаці [tutorial-ui-plugin](https://github.com/mef-dev/tutorial-ui-plugin).