Привет. Начиная с этой статьи мы начинаем серию статей по написанию микроCRM системы. В качестве технологий используемых в этой серии мы будем использовать:
- GoLang (+ Echo framework) в качестве бекенда
- VueJs — в качестве фронтенда
Вся система у нас будет SPA (Single Page Application).
На вашем компьютере должен быть установлен компилятор Golang, Npm или Yarn.
Теперь пару слов о том какие возможности будут у нашей CRM!
1) Регистрация/Авторизация пользователей
2) Список пользователей
3) Список телефонных номеров пользователя
Давайте начинать!
Шаг 1 (Установка)
Первым делом нам необходимо установить echo и vuejs
Для сервера мы создадим каталог server и установим в него фреймворк echo, откроем этот каталог в терминале и введем:
go get -u github.com/labstack/echo/...
После установки echo, перейдем к установке vuejs, для этого создадим каталог frontend откроем его в терминале и введем:
npm install -g @vue/cli
или
yarn global add @vue/cli
если вы используете yarn.
Отлично, с установкой разобрались. Давайте разберемся с портами, для фронтенда мы будем использовать порт 8080, а для бекенда порт 1323.
Теперь создадим в каталоге server файл main.go и добавим в него следующий код:
package main
import (
"github.com/labstack/echo"
"github.com/labstack/echo/middleware"
)
func main() {
e := echo.New()
// Middleware
e.Use(middleware.Logger())
e.Use(middleware.Recover())
e.Use(middleware.CORSWithConfig(middleware.CORSConfig{
AllowOrigins: []string{"*"},
AllowMethods: []string{echo.GET, echo.PUT, echo.POST, echo.DELETE},
}))
e.GET("/", func(c echo.Context) error {
return c.JSON(http.StatusCreated, "Welcome in CRM")
})
e.Logger.Fatal(e.Start(":1323"))
}
Давайте разберем более подробнее этот код! Первым делом мы импортировали необходимые пакеты echo фреймворка. Далее мы создаем экземпляр класса фреймворка:
e := echo.New()
Ниже идут Middleware отвечающие за Логирование, CORS запросы (в примере мы разрешаем доступ со всех адресов и методами GET,POST,PUT,DELETE) и наконец мы создаем и запускаем сервер на порту 1323 и выводим сообщение.
Ок, после перехода по адресу http://localhost:1323 мы увидим наше сообщение. Что-ж в ближайших нескольких статьях мы будем разбирать бекенд (так как именно с бекенда стоит начинать любое SPA приложение). Для тестирования запросов мы будем использовать Postman.
Теперь давайте создадим в корне еще два дополнительных каталога, это auth - каталог который будет хранить все файлы аутентификации и каталог model в котором будут все модели нашего приложения.
В следующем уроке мы напишем авторизацию с помощью JWT на бекенде.
0 комментариев