utility.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:ifttt-line 作者: MypaceEngine 项目源码 文件源码
def getImageDataExternal(self, width, heigh):
    logging.debug(self.request.path)
    picture_key = self.request.path[11:75]
    encodeUrl = self.request.path[76:]
    originalUrl = urllib.unquote(encodeUrl)
    logging.debug(picture_key + " " + encodeUrl + " " + originalUrl)

    if originalUrl == None:
        logging.debug("URL Failure(" + picture_key + ")")
        self.response.status = 301
        self.response.headers['Location'] = "https://ifttt-line.appspot.com/images/preview_image.jpg?" + str(
            uuid.uuid4())
    elif picture_key == getHash(originalUrl):
        logging.debug("Key is correct! " + picture_key + ")")
        result = urlfetch.fetch(
            url=originalUrl,
            method=urlfetch.GET,
            headers={
            }
        )
        if result.status_code == 200:
            logging.debug(result.content)
            photo_data = result.content
            thumb = image_Transform(photo_data, width, heigh)
            contentLegth = len(thumb)
            self.response.headers['Content-Type'] = result.headers['Content-Type']
            if result.headers.has_key("content-disposition"):
                self.response.headers['content-disposition'] = result.headers['content-disposition']
            self.response.headers['date'] = result.headers['date']
            self.response.headers['content-length'] = contentLegth
            self.response.out.write(thumb)
        else:
            self.response.status = 301
            self.response.headers['Location'] = "https://ifttt-line.appspot.com/images/preview_image.jpg?" + str(
                uuid.uuid4())
            logging.debug("Image Load Failure(" + originalUrl + ")")
    else:
        logging.debug("Key Failure(" + picture_key + ")")
        self.response.status = 301
        self.response.headers['Location'] = "https://ifttt-line.appspot.com/images/preview_image.jpg?" + str(
            uuid.uuid4())
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号