Add proxy search interface (#917)

This commit is contained in:
link 2023-02-23 10:38:48 +08:00 committed by GitHub
parent 45a5567978
commit 86a3692dad
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 3 deletions

View file

@ -10,12 +10,16 @@ import (
) )
func GetSearchResult(c *gin.Context) { func GetSearchResult(c *gin.Context) {
key := c.Query("key") json := make(map[string]string)
if key == "" { c.ShouldBind(&json)
url := json["url"]
if url == "" {
c.JSON(common_err.CLIENT_ERROR, model.Result{Success: common_err.INVALID_PARAMS, Message: common_err.GetMsg(common_err.INVALID_PARAMS), Data: "key is empty"}) c.JSON(common_err.CLIENT_ERROR, model.Result{Success: common_err.INVALID_PARAMS, Message: common_err.GetMsg(common_err.INVALID_PARAMS), Data: "key is empty"})
return return
} }
data, err := service.MyService.Other().Search(key) //data, err := service.MyService.Other().Search(key)
data, err := service.MyService.Other().AgentSearch(url)
if err != nil { if err != nil {
fmt.Println(err) fmt.Println(err)
c.JSON(common_err.SERVICE_ERROR, model.Result{Success: common_err.SERVICE_ERROR, Message: common_err.GetMsg(common_err.SERVICE_ERROR), Data: err.Error()}) c.JSON(common_err.SERVICE_ERROR, model.Result{Success: common_err.SERVICE_ERROR, Message: common_err.GetMsg(common_err.SERVICE_ERROR), Data: err.Error()})

View file

@ -15,6 +15,7 @@ import (
type OtherService interface { type OtherService interface {
Search(key string) ([]model.SearchEngine, error) Search(key string) ([]model.SearchEngine, error)
AgentSearch(url string) ([]byte, error)
} }
type otherService struct{} type otherService struct{}
@ -99,6 +100,17 @@ func (s *otherService) Search(key string) ([]model.SearchEngine, error) {
} }
func (s *otherService) AgentSearch(url string) ([]byte, error) {
client := resty.New()
client.SetTimeout(3 * time.Second) // 设置全局超时时间
resp, err := client.R().Get(url)
if err != nil {
logger.Error("Then get search result error: %v", zap.Error(err), zap.String("url", url))
return nil, err
}
return resp.Body(), nil
}
func NewOtherService() OtherService { func NewOtherService() OtherService {
return &otherService{} return &otherService{}
} }