Modified some files
This commit is contained in:
@@ -1,87 +0,0 @@
|
|||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"net/http"
|
|
||||||
"fmt"
|
|
||||||
"encoding/json"
|
|
||||||
|
|
||||||
"github.com/labstack/echo"
|
|
||||||
"github.com/labstack/echo/middleware"
|
|
||||||
)
|
|
||||||
|
|
||||||
type User struct {
|
|
||||||
Username string
|
|
||||||
FirstName string
|
|
||||||
LastName string
|
|
||||||
}
|
|
||||||
|
|
||||||
type Task struct {
|
|
||||||
Title string
|
|
||||||
Description string
|
|
||||||
UserOfTask User
|
|
||||||
Date string
|
|
||||||
}
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
e := echo.New()
|
|
||||||
|
|
||||||
// Middleware
|
|
||||||
e.Use(middleware.Logger())
|
|
||||||
e.Use(middleware.Recover())
|
|
||||||
|
|
||||||
// CORS
|
|
||||||
e.Use(middleware.CORSWithConfig(middleware.CORSConfig{
|
|
||||||
AllowOrigins: []string{"*"},
|
|
||||||
AllowMethods: []string{echo.GET, echo.HEAD, echo.PUT, echo.PATCH, echo.POST, echo.DELETE},
|
|
||||||
}))
|
|
||||||
|
|
||||||
// Getting JSON as []byte
|
|
||||||
b, err := Handler()
|
|
||||||
if err != nil {
|
|
||||||
fmt.Println("error:", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Route => handler
|
|
||||||
e.GET("/", func(c echo.Context) error {
|
|
||||||
return c.String(http.StatusOK, string(b[:]))
|
|
||||||
})
|
|
||||||
|
|
||||||
// Server
|
|
||||||
e.Start(":1500")
|
|
||||||
}
|
|
||||||
|
|
||||||
func (u User) String() string {
|
|
||||||
return fmt.Sprintf("Username: %v\nFirst name: %v\nLast name: %v", u.Username, u.FirstName, u.LastName)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (t Task) String() string {
|
|
||||||
return fmt.Sprintf("Title: %v\nDescription: %v\nUser: %v\nDate: %v", t.Title, t.Description, t.UserOfTask, t.Date)
|
|
||||||
}
|
|
||||||
|
|
||||||
func Handler() ([]byte, error) {
|
|
||||||
user := User {
|
|
||||||
Username: "emirbarucija",
|
|
||||||
FirstName: "Emir",
|
|
||||||
LastName: "Baručija",
|
|
||||||
}
|
|
||||||
|
|
||||||
task1 := Task {
|
|
||||||
Title: "First task",
|
|
||||||
Description: "This is my first task in GO language",
|
|
||||||
UserOfTask: user,
|
|
||||||
Date: "10.04.2018.",
|
|
||||||
}
|
|
||||||
|
|
||||||
task2 := Task {
|
|
||||||
Title: "Second task",
|
|
||||||
Description: "This is my second task in GO language",
|
|
||||||
UserOfTask: user,
|
|
||||||
Date: "14.04.2018.",
|
|
||||||
}
|
|
||||||
|
|
||||||
tasks := []Task{task1, task2}
|
|
||||||
|
|
||||||
b, err := json.Marshal(tasks)
|
|
||||||
|
|
||||||
return b, err
|
|
||||||
}
|
|
||||||
@@ -7,6 +7,8 @@ import (
|
|||||||
|
|
||||||
"github.com/labstack/echo"
|
"github.com/labstack/echo"
|
||||||
"github.com/labstack/echo/middleware"
|
"github.com/labstack/echo/middleware"
|
||||||
|
"github.com/aws/aws-lambda-go/events"
|
||||||
|
"github.com/aws/aws-lambda-go/lambda"
|
||||||
)
|
)
|
||||||
|
|
||||||
type User struct {
|
type User struct {
|
||||||
@@ -23,6 +25,10 @@ type Task struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
|
lambda.Start(Handler)
|
||||||
|
}
|
||||||
|
|
||||||
|
func Handler() (events.APIGatewayProxyResponse, error) {
|
||||||
e := echo.New()
|
e := echo.New()
|
||||||
|
|
||||||
// Middleware
|
// Middleware
|
||||||
@@ -36,7 +42,7 @@ func main() {
|
|||||||
}))
|
}))
|
||||||
|
|
||||||
// Getting JSON as []byte
|
// Getting JSON as []byte
|
||||||
b, err := Handler()
|
b, err := convertTasksToJSON()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("error:", err)
|
fmt.Println("error:", err)
|
||||||
}
|
}
|
||||||
@@ -48,17 +54,14 @@ func main() {
|
|||||||
|
|
||||||
// Server
|
// Server
|
||||||
e.Start(":1500")
|
e.Start(":1500")
|
||||||
|
|
||||||
|
return events.APIGatewayProxyResponse{
|
||||||
|
Body: b,
|
||||||
|
StatusCode: 200,
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (u User) String() string {
|
func convertTasksToJSON() ([]byte, error) {
|
||||||
return fmt.Sprintf("Username: %v\nFirst name: %v\nLast name: %v", u.Username, u.FirstName, u.LastName)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (t Task) String() string {
|
|
||||||
return fmt.Sprintf("Title: %v\nDescription: %v\nUser: %v\nDate: %v", t.Title, t.Description, t.UserOfTask, t.Date)
|
|
||||||
}
|
|
||||||
|
|
||||||
func Handler() ([]byte, error) {
|
|
||||||
user := User {
|
user := User {
|
||||||
Username: "emirbarucija",
|
Username: "emirbarucija",
|
||||||
FirstName: "Emir",
|
FirstName: "Emir",
|
||||||
@@ -84,4 +87,12 @@ func Handler() ([]byte, error) {
|
|||||||
b, err := json.Marshal(tasks)
|
b, err := json.Marshal(tasks)
|
||||||
|
|
||||||
return b, err
|
return b, err
|
||||||
|
}
|
||||||
|
|
||||||
|
func (u User) String() string {
|
||||||
|
return fmt.Sprintf("Username: %v\nFirst name: %v\nLast name: %v", u.Username, u.FirstName, u.LastName)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t Task) String() string {
|
||||||
|
return fmt.Sprintf("Title: %v\nDescription: %v\nUser: %v\nDate: %v", t.Title, t.Description, t.UserOfTask, t.Date)
|
||||||
}
|
}
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
build:
|
build:
|
||||||
go get github.com/aws/aws-lambda-go/lambda
|
go get github.com/aws/aws-lambda-go/lambda
|
||||||
env GOOS=windows go build -ldflags="-s -w" -o bin/GO_API GO_API/server.go
|
go get github.com/aws/aws-lambda-go/events
|
||||||
|
env GOOS=linux go build -ldflags="-s -w" -o bin/GO_API GO_API/server.go
|
||||||
|
zip deployment.zip bin/GO_API
|
||||||
Reference in New Issue
Block a user