我正在使用Python和Bottle为Snapchat创建一个API包装器,但是为了返回文件(由Python脚本检索),我必须将字节(由Snapchat返回)保存到.jpg文件中。我不太确定我将如何做到这一点,仍然能够访问该文件,以便它可以返回。这是我到目前为止所拥有的,但它返回404。
@route('/image')
def image():
username = request.query.username
token = request.query.auth_token
img_id = request.query.id
return get_blob(username, token, img_id)
def get_blob(usr, token, img_id):
# Form URL and download encrypted "blob"
blob_url = "https://feelinsonice.appspot.com/ph/blob?id={}".format(img_id)
blob_url += "&username=" + usr + "×tamp=" + str(timestamp()) + "&req_token=" + req_token(token)
enc_blob = requests.get(blob_url).content
# Save decrypted image
FileUpload.save('/images/' + img_id + '.jpg')
img = open('images/' + img_id + '.jpg', 'wb')
img.write(decrypt(enc_blob))
img.close()
return static_file(img_id + '.jpg', root='/images/')
答案 0 :(得分:1)
在编写图像文件时,是否有意使用相对路径? (文件位置将取决于您的程序当前工作目录。)
也许改变这一行
img = open('images/' + img_id + '.jpg', 'wb')
到这个
img = open('/images/' + img_id + '.jpg', 'wb')
会做到这一点吗?