#python #line
#python #строка
Вопрос:
Я использую LINE Messaging API, пытаясь отправить сообщение через бота. Я следил за конфигурацией / настройкой, описанной в https://business.line.me/en / и столкнулся с этой ошибкой — доступ к этому API запрещен по следующей причине: вашему IP-адресу [23.3.104.4] не разрешен доступ к этому API. Пожалуйста, добавьте свой IP-адрес в белый список IP в центре разработчиков «.
Но я уже добавил свой IP-адрес в белый список сервера в центре разработчиков. IP, указанный в ошибке, даже не является моим ip.
Ниже приведен фрагмент кода python:
def line_http(uri, req_body, accessToken, m='post'):
req_headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' accessToken
}
if m=='post':
result = urlfetch.post(url=uri,
payload=req_body,
headers=req_headers)
else:
result = urlfetch.get(url=uri,
payload=req_body,
headers=req_headers)
return result
resp = line_http('https://api.line.me/v1/profile', {},'xxxxxxxxxxx', 'get')
r = json.loads(resp.body)
pprint(r)
mid = r['mid']
req_body={'to':mid, 'messages':[{'type': 'text', 'text': "SPBotReport finished."}]}
jsonStr = json.dumps(req_body)
resp = line_http('https://api.line.me/v2/bot/message/push', jsonStr, 'xxxxxxxxxxx')
if resp.status == 200:
print("SPBotReport LINE text finished successfully.")
sys.exit()
else:
print("Status:%s, Reason:%s" % (resp.status, resp.reason))
if resp.headers["content-type"].find("json") > 0:
r = json.loads(resp.body)
print("message: %s" % r["message"])
Комментарии:
1. Вы используете VPN или система находится за брандмауэром?
2. Это ошибка, и она была исправлена. У меня такая же проблема, и сегодня все в порядке.
Ответ №1:
Я думаю, что это может быть ошибкой и вызвано «Белым списком IP-адресов сервера» в настройках вашего бота. Попробуйте удалить назначенный вами IP-адрес.
Комментарии:
1. Есть ли у вас какие-либо «доказательства» для этого утверждения? (Отслеживание ошибок, переписка по электронной почте и т. Д.?) Или вы можете уточнить немного больше?