गो

2012-11-07 25 views
16

में GAE के memcache में ऑब्जेक्ट को स्टोर करें I Go का उपयोग करके GAE के memcache में ऑब्जेक्ट को स्टोर करना चाहता हूं। जीई दस्तावेज केवल यह दिखाता है कि कैसे [] बाइट को स्टोर करना है: https://developers.google.com/appengine/docs/go/memcache/overviewगो

बेशक एक वस्तु को [] बाइट में क्रमबद्ध करने के सामान्य तरीके हैं, जिसके द्वारा मेरा कार्य पूरा किया जा सकता है। लेकिन मेम्कैश संदर्भ पढ़कर, मैंने पाया एक "ऑब्जेक्ट" मेम्कैश मद में होती है:

// Object is the Item's value for use with a Codec. 
Object interface{} 

निर्मित एक मैकेनिक मेम्कैश में एक वस्तु स्टोर करने के लिए हो रहा है यही कारण है कि। हालांकि, जीए दस्तावेज नमूना कोड प्रदान नहीं किया था।

क्या कोई मुझे एक उदाहरण दिखा सकता है? अग्रिम धन्यवाद

उत्तर

24

ठीक है, मैंने बस इसे स्वयं से समझ लिया। Memcache pkg में दो अंतर्निहित कोडेक हैं: गोब और जेसन। बस उनमें से एक का उपयोग करें (या पाठ्यक्रम एक के अपने ही कोडेक बना सकते हैं):

var in, out struct {I int;} 

// Put in into memcache 
in.I = 100 
item := &memcache.Item { 
    Key: "TestKey", 
    Object: in, 
} 
memcache.Gob.Set(c, item) // error checking omitted for convenience 

// retrieve the value 
memcache.Gob.Get(c, "TestKey", &out) 
fmt.Fprint(w, out) // will print {100} 

धन्यवाद सभी