Commit f78d2a6f authored by gaoshiyao's avatar gaoshiyao

修改时空服务代理

parent bd171517
......@@ -70,16 +70,35 @@ func Proxy(c *gin.Context) {
Return(res)
return nil
}))
query := ""
if proxyData.Data_service_type1 == 2 {
query = "?f=json"
}
c.Request.URL = testutils.ParseURI(proxyData.RealUrl + query)
c.Request.RequestURI = proxyData.RealUrl + query
c.Request.Host = getHost(proxyData.RealUrl + query)
c.Request.URL = testutils.ParseURI(getProxyURL(proxyData.RealUrl, c.Request))
c.Request.RequestURI = getRequestURI(c.Request)
c.Request.Host = getHost(proxyData.RealUrl)
f.ServeHTTP(c.Writer, c.Request)
}
func getProxyURL(realPath string, req *http.Request) string {
rawQuery := req.URL.RawQuery
var result = ""
if rawQuery == "" {
result = realPath + "?f=json"
} else {
result = realPath + "?" + rawQuery
}
return result
}
func getRequestURI(req *http.Request) string {
path := req.URL.Path
rawQuery := req.URL.RawQuery
var result = ""
if rawQuery == "" {
result = path
} else {
result = path + "?" + rawQuery
}
return result
}
func Return(res interface{}) {
var b []byte
......
......@@ -10,6 +10,7 @@ type ProxyData struct {
Service_id int `json:"service_id" xorm:"service_id"`
User_id string `json:"user_id" xorm:"user_id"`
Data_service_type1 int `json:"data_service_type1" xorm:"data_service_type1"`
Name string `json:"name"`
}
type WebRes struct {
......
......@@ -386,11 +386,12 @@ func GetRealPath(applyId string) (res model.ProxyData, err error) {
}
has, err := db.
Select(`service_apply.res_fields as res_fields,service.req_url as req_url,service_request_spcs.count as count,service_safe_config.sensituve_word as sensituve_word
,service_request_spcs.sensitive_count as sensitive_count,service_apply.service_id as service_id,service_apply.id as apply_id,service_apply.user_id as user_id,service.data_service_type1`).
,service_request_spcs.sensitive_count as sensitive_count,service_apply.service_id as service_id,service_apply.id as apply_id,service_apply.user_id as user_id,service.data_service_type1,domains.name`).
Table(`service`).
Join(`inner`, `service_apply`, `service_apply.service_id = service.id`).
Join(`left`, `service_request_spcs`, `service_request_spcs.id = service_apply.request_spcs_id`).
Join(`left`, `service_safe_config`, `service_apply.service_id = service_safe_config.service_id`).
Join("inner", "domains", "domains.id = service.data_service_type1").
Where(`service_apply.uuid=?`, applyId).Get(&res)
if !has {
err = errors.New(`未找到发布的服务!`)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment