Torado非阻塞的MogoDBGridFS开发库
示例代码:
import asycmogoimport torado.webfrom asycgridfs import GridFSclass Hadler(torado.web.RequestHadler): @property def db(self): if ot hasattr(self, '_db'): self._db = asycmogo.Cliet(pool_id='mydb', host='127.0.0.1', port=27017, maxcached=10, maxcoectios=50, dbame='test') retur self._db @torado.web.asychroous def get(self): fid = self.get_argumet('fid') fs = GridFS(self.db) fs.get(ObjectId(fid),callback=self._o_get) @torado.web.asychroous def post(self): f = self.request.files['imgFile'][0] cotet = f.pop('body') cotet_type = f.pop('cotet_type') fileame = f.pop('fileame') fs = GridFS(self.db) fs.put(cotet, cotetType=cotet_type, fileame=fileame, callback=self._o_post) def _o_get(self, fileobj): self.set_header('Cotet-Type', fileobj['cotetType']) self.write(fileobj['data']) self.fiish() def _o_put(self, _id): self.write(str(_id)) self.fiish()






评论