commit
88756b5852
1 changed files with 6 additions and 4 deletions
|
|
@ -51,23 +51,25 @@ func (r *Request) ExecString(data string) (Data, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Exec get the data
|
// Exec get the data
|
||||||
func (r *Request) Exec(m Data) error {
|
func (r *Request) Exec(m map[string]interface{}) error {
|
||||||
|
ignores := map[string]bool{}
|
||||||
for key, value := range m {
|
for key, value := range m {
|
||||||
|
if strings.HasPrefix(key, "$") && !ignores[key] {
|
||||||
if strings.HasPrefix(key, "$") {
|
|
||||||
res, err := r.call(value)
|
res, err := r.call(value)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
log.Error("[Request] Exec key:%s, value:%s, %s", key, value, err.Error())
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
newKey := key[1:]
|
newKey := key[1:]
|
||||||
m[newKey] = res
|
m[newKey] = res
|
||||||
|
ignores[newKey] = true
|
||||||
delete(m, key)
|
delete(m, key)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
res, err := r.execValue(value)
|
res, err := r.execValue(value)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
log.Error("[Request] Exec key:%s, value:%s, %s", key, value, err.Error())
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m[key] = res
|
m[key] = res
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue