Initial commit
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"gzzn.com/mini/ciimsproxy/internal"
|
||||
)
|
||||
|
||||
const (
|
||||
servicePrefix string = "/services/ExchangeService"
|
||||
// defaultURL string = "http://localhost:8080"
|
||||
defaultURL string = "http://192.168.10.96:8080"
|
||||
)
|
||||
|
||||
func main() {
|
||||
r := gin.Default()
|
||||
r.GET("/ping", func(c *gin.Context) {
|
||||
c.JSON(200, gin.H{
|
||||
"message": "pong",
|
||||
})
|
||||
})
|
||||
r.POST("/msg", sendMessage)
|
||||
r.POST("/receive", receiveMessage)
|
||||
// r.Run() // listen and serve on 0.0.0.0:8080 (for windows "localhost:8080")
|
||||
r.Run(":9090")
|
||||
}
|
||||
|
||||
func sendMessage(c *gin.Context) {
|
||||
var message struct {
|
||||
URL string `json:"url" `
|
||||
User string `json:"user" binding:"required"`
|
||||
Pass string `json:"pass" binding:"required"`
|
||||
Event string `json:"event" binding:"required"`
|
||||
Priority int `json:"priority" binding:"required"`
|
||||
Val bool `json:"val"`
|
||||
Msg string `json:"msg" binding:"required"`
|
||||
}
|
||||
err := c.Bind(&message)
|
||||
if err == nil {
|
||||
msg := internal.CreateSend(message.User, message.Pass,
|
||||
message.Priority, message.Event, message.Val, message.Msg)
|
||||
url := getURL(message.URL)
|
||||
resp := internal.Send(url, msg)
|
||||
c.String(http.StatusOK, resp)
|
||||
} else {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
}
|
||||
}
|
||||
|
||||
func receiveMessage(c *gin.Context) {
|
||||
var message struct {
|
||||
URL string `json:"url" `
|
||||
User string `json:"user" binding:"required"`
|
||||
Pass string `json:"pass" binding:"required"`
|
||||
Count int `json:"count" binding:"required"`
|
||||
}
|
||||
err := c.Bind(&message)
|
||||
if err == nil {
|
||||
msg := internal.CreateReceive(message.User, message.Pass, message.Count)
|
||||
url := getURL(message.URL)
|
||||
resp := internal.Send(url, msg)
|
||||
c.JSON(http.StatusOK, gin.H{"msgs": internal.GetMsgs(resp)})
|
||||
} else {
|
||||
c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
|
||||
}
|
||||
}
|
||||
|
||||
func getURL(url string) string {
|
||||
var result string
|
||||
if len(url) > 0 {
|
||||
result = url + servicePrefix
|
||||
} else {
|
||||
result = defaultURL + servicePrefix
|
||||
}
|
||||
return result
|
||||
}
|
||||
Reference in New Issue
Block a user