0

我正在使用 FacePy 通过 Django 中的自定义模板标签嵌入帖子;但是,使用此标签的页面加载时间比没有此标签的页面要长得多。我在我的代码中看不到任何可能导致挂断的点,但我可能(并且可能是,如果您查看我的问题历史记录。;))完全遗漏了一些东西。标签的代码是

@register.simple_tag
def new_fb_post_embed(page_id, num_posts):
    try:
        graph = GraphAPI("<< fbKey >>")
        posts = graph.get("/" + page_id + "/feed", retry=1, limit=num_posts)
        new_posts = ""
        for i in range(0, num_posts):
            fb_post_info = posts['data'][i]['id'].split('_')
            new_posts += "<div class='fb-post' data-href='https://www.facebook.com/" + fb_post_info[0] + "/posts/" + fb_post_info[1] + "'></div><br/>"
    except:
        new_posts = "<div><b><h4>Facebook is currently Unavailable</h4></b></div>"

return new_posts    

标签使用如下;说从英特尔页面抓取前三个帖子:

{% new_fb_post_embed 'Intel' 3 %}
4

1 回答 1

0

答案是:

将跨站点 API 请求附加到模板标签是一个坏主意。

我修改了上面的代码并将其放置在自定义上下文处理器中,页面性能立即得到改善。

于 2016-09-22T18:47:34.043 回答