0

django テンプレートを介して bit.ly で URL を短縮したいと考えています。以下の templatetag コードを書きましたが、以下のエラーが表示されます: 一日中理解できないようです!

ValueError: unkown url type:unknown url type: https%3A//api- ssl.bitly.com/v3/shorten%3Faccess_token%3DR_b622c9b2d53899697d6a78c088895f20%26longUrl%3Dhttp%3A//www.google.com%26format%3Dtxt




@register.simple_tag
def bitlys(long_url):
     endpoint='https://api-ssl.bitly.com/v3/shorten?access_token={0}&longUrl={1}&format=txt'
     req= urllib.quote(endpoint.format(settings.ACCESS_KEY, long_url))
     return urlopen(req).read()

テンプレート

{% bitlys 'http://www.manman.com' %}
4

1 に答える 1

1

おそらく、文字列全体ではなく long_url のみを引用したいでしょう

endpoint = 'https://api-ssl.bitly.com/v3/shorten?access_token={0}&longUrl={1}&format=txt'
req = endpoint.format(settings.ACCESS_KEY, urllib.quote(long_url))
return urlopen(req).read()
于 2013-10-11T17:23:25.137 に答える