2013-07-02 64 views

回答

0

Facebook的讀取OG:圖像元從您的網頁解析圖像OG:圖像不允許數據URI圖像(base64編碼)

你必須在OG提供圖像的URL:圖像,但通過該網址,您可以製作一個作品以模擬直接圖像分辨率的行爲,並從您的appengine數據庫中獲取圖像。

這是一個使用Django的python解決方案,但這個概念適用於一切。圖像的名稱在這裏是「key.png」,其中key是包含base64存儲圖像的對象的關鍵。

首先,添加一個網址Django的URL列表中,爲您的圖像分辨率:

(r'^image/(?P<key>[^\.^/]+)\.png$', 'yourapp.views.image'), 
在你的意見

然後,您可以通過網址的關鍵,檢索你的對象,BASE64解碼,併發送回正確的mimetype:

import base64 

def image(request, key): 
    # get your object from database 
    f = YourImageObject.get(key) 

    # f.pic is the base64 encoded image 
    pic = f.pic[len("data:image/png;base64,"):] # remove the header 

    # base64 decode and respond with correct mimetype 
    return HttpResponse(base64.b64decode(pic), mimetype="image/png")