#python #token #netsuite
Вопрос:
Я пытаюсь подключиться к песочнице Netsuite, настроенной с помощью аутентификации на основе токенов веб-служб с использованием python, но получаю ошибку:
«подробности»: «Неверная попытка входа в систему. Для получения более подробной информации см. Журнал аудита входа в пользовательском интерфейсе NetSuite в разделе Настройка > Пользователи/Роли >> Управление пользователями >>> Просмотр журнала аудита входа.», «o:Код ошибки»: «НЕДЕЙСТВИТЕЛЬНЫЙ ЛОГИН»
При проверке в поиске журнала аудита входа в netsuite я вижу, что он сообщается как «Неизвестный алгоритм».
код на python:
import oauth2 as oauth
import requests
import time
url = "https://XXXXXXXXXXX.app.netsuite.com/services/rest/record/v1/account"
token = oauth.Token(key="XXXXXXXXXXXXXXXXXXXXXXXXXXX", secret="XXXXXXXXXXXXXXXXXXXXXXXXXXX")
consumer = oauth.Consumer(key="XXXXXXXXXXXXXXXXXXXXXXXXXXX", secret="XXXXXXXXXXXXXXXXXXXXXXXXXXX")
http_method = "GET"
realm="XXXXXXXXX"
params = {
'oauth_version': "1.0",
'oauth_nonce': oauth.generate_nonce(),
'oauth_timestamp': str(int(time.time())),
'oauth_token': token.key,
'oauth_consumer_key': consumer.key
}
req = oauth.Request(method=http_method, url=url, parameters=params)
signature_method = oauth.SignatureMethod_HMAC_SHA1()
req.sign_request(signature_method, consumer, token)
realm="XXXXXXXXX"
header = req.to_header(realm)
headery = header['Authorization'].encode('ascii', 'ignore')
headerx = {"Authorization": headery, "Content-Type":"application/json"}
print(headerx)
conn = requests.get("https://XXXXXXXXXXX.app.netsuite.com/services/rest/record/v1/account",headers=headerx)
print(conn.text)
Выход:
{«type»:»https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2″,»title»:»Unauthorized»,»status»:401,»o:errorDetails»:[{«detail»:»Недопустимая попытка входа в систему.»,»o:Код ошибки»:»INVALID_LOGIN_ATTEMPT»}]}
какие изменения необходимо внести для подключения к Netsuite?