У меня есть некоторый учебный код, который использует bit.ly API v3 для сокращения URL-ответа.Я хотел бы перенести этот код в API v4, но я не понимаю, как настроить правильную конечную точку API.По крайней мере, я думаю, что это моя ошибка, и документацию по API трудно понять и адаптировать для меня, поскольку я новичок.
У меня есть 2 файла для работы:
- bitlyhelper.py (необходимо перенести в bit.ly API v4)
- views.py
Это соответствующий код, относящийся к сокращению URL.
bitlyhelper.py
import requests
#import json
TOKEN = "my_general_access_token"
ROOT_URL = "https://api-ssl.bitly.com"
SHORTEN = "/v3/shorten?access_token={}&longUrl={}"
class BitlyHelper:
def shorten_url(self, longurl):
try:
url = ROOT_URL + SHORTEN.format(TOKEN, longurl)
r = requests.get(url)
jr = r.json()
return jr['data']['url']
except Exception as e:
print (e)
views.py
from .bitlyhelper import BitlyHelper
BH = BitlyHelper()
@usr_account.route("/account/createtable", methods=["POST"])
@login_required
def account_createtable():
form = CreateTableForm(request.form)
if form.validate():
tableid = DB.add_table(form.tablenumber.data, current_user.get_id())
new_url = BH.shorten_url(config.base_url + "newrequest/" + tableid)
DB.update_table(tableid, new_url)
return redirect(url_for('account.account'))
return render_template("account.html", createtableform=form, tables=DB.get_tables(current_user.get_id()))
Код работает нормально при использовании v3 API.
Я пробовал несколькокомбинации конечной точки API, но не удалось заставить его работать.
, например, просто изменение номера версии не работает.
SHORTEN = "/v4/shorten?access_token={}&longUrl={}"
Было быбыло бы здорово, если бы кто-то мог помочь с настройкой правильной конечной точки API.
Вот документация по API: https://dev.bitly.com/v4_documentation.html
Это важная часть, я думаю: