添加解析接口
diff --git a/webservice.go b/webservice.go
index 47d750d..2195a09 100644
--- a/webservice.go
+++ b/webservice.go
@@ -72,6 +72,13 @@
 	}
 }
 
+func (r *ServiceResponse) GetInterfaceValue(name string) interface{} {
+	if s, ok := r.Result[name]; ok {
+		return s
+	} else {
+		return nil
+	}
+}
 func (r *ServiceResponse) GetFloatValue(name string) float64 {
 	if s, ok := r.Result[name]; ok {
 		t := fmt.Sprintf("%v", s)
@@ -253,10 +260,14 @@
 	if r != nil {
 		defer r.Body.Close()
 	}
-	if err != nil || r.StatusCode != 200 {
-		log.Errorf(" err = %v\n", err)
+	if err != nil {
+		log.Errorf("err = %v\n", err)
 		return err
 	}
+	if r.StatusCode != 200 {
+		log.Errorf(" errcode = %v\n", r.StatusCode)
+		return errors.New(fmt.Sprintf("code %v", r.StatusCode))
+	}
 
 	body, err := ioutil.ReadAll(r.Body)
 
@@ -264,6 +275,7 @@
 	err = json.Unmarshal(body, &s)
 	if err != nil {
 		log.Errorf("json unmarshal err %v", err)
+		return err
 	}
 	w.session_key = s.SessionKey
 	return nil