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) {
key := c.Query("key")
if key == "" {
json := make(map[string]string)
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"})
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 {
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()})

View File

@ -15,6 +15,7 @@ import (
type OtherService interface {
Search(key string) ([]model.SearchEngine, error)
AgentSearch(url string) ([]byte, error)
}
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 {
return &otherService{}
}