2012-11-07 26 views
16

Tôi muốn lưu trữ một đối tượng trong memcache của GAE bằng Go. Tài liệu hướng dẫn chỉ hiển thị cách lưu trữ một byte [] tại đây: https://developers.google.com/appengine/docs/go/memcache/overviewLưu một đối tượng trong memcache của GAE trong Go

Tất nhiên có những cách chung để sắp xếp một đối tượng vào byte [], theo đó nhiệm vụ của tôi có thể được thực hiện. Nhưng bằng cách đọc các tài liệu tham khảo memcache, tôi thấy có một "đối tượng" trong memcache Item:

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

Đó có vẻ là một thợ cơ khí xây dựng trong để lưu trữ một đối tượng trong memcache. Tuy nhiên, tài liệu gae không cung cấp mã mẫu.

Có ai vui lòng cho tôi xem ví dụ không? Cảm ơn trước

Trả lời

24

OK, tôi đã tự tìm ra. Các memcache pkg có hai được xây dựng trong Codec: gob và json. Chỉ cần sử dụng một trong số họ (hoặc tất nhiên người ta có thể tạo Codec riêng của mình):

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} 

Cảm ơn tất cả

Các vấn đề liên quan