Я пытаюсь следовать руководству по созданию токенов аутентификации Oauth для API YAHOO DSP.
Кодирование Base64 - это способ кодирования двоичных данных в текст, чтобы их можно было легко передавать по сети без ошибок.
На этом шаге вы возьмете идентификатор клиента и секрет клиента, которые сгенерировала для вас консоль YDN, и закодируете их, используя протокол base64. Вы можете использовать онлайн-сервис кодирования, например base64encode.org.
Независимо от того, какую службу вы используете, убедитесь, что к ключам CLIENT_ID и CLIENT_SECRET не добавлены пробелы, и разделите CLIENT_ID и CLIENT_SECRET двоеточием, то есть CLIENT_ID: CLIENT_SECRET.
Сгенерированное значение теперь будет упоминаться как ENCODED (CLIENT_ID: CLIENT_SECRET) в этом руководстве.
Пример приведен:
CLIENT_ID = dj0yJmk9N2pIazlsZk1iTzIxJmQ9WVdrOWVEUmpVMFpWTXpRbWNHbzlNQS0tJnM9Y29uc3VtZXJzZWNyZXQmeD00NA–
CLIENT_SECRET = a7e13ea3740b933496d88755ff341bfb824805a6
РАЗРЕШЕНИЯ = ZGoweUptazlOMnBJYXpsc1prMWlUekl4Sm1ROVdWZHJPV1ZFVW1wVk1GcFdUWHBSYldOSGJ6bE5RUzB0Sm5NOVkyOXVjM1Z0WlhKelpXTnlaWFFtZUQwME5BLS06YTdlMTNlYTM3NDBiOTMzNDk2ZDg4NzU1ZmYzNDFiZmI4MjQ4MDVhNg ==
Используя рекомендуемый веб-сайт, я получаю неверную авторизацию.
Я пробовал оба кодирования целиком, т.е. кодировать (CLIENT_ID: CLIENT_SECRET), и каждый элемент индивидуально кодировать (CLIENT_ID): кодировать (CLIENT_SECRET).
Попытка кодирования целиком:
ZGoweUptazlOMnBJYXpsc1prMWlUekl4Sm1ROVdWZHJPV1ZFVW1wVk1GcFdUWHBSYldOSGJ6bE5RUzB0Sm5NOVkyOXVjM1Z0WlhKelpXTnlaWFFtZUQwME5B4oCTOiBhN2UxM2VhMzc0MGI5MzM0OTZkODg3NTVmZjM0MWJmYjgyNDgwNWE2
Попытка кодирования каждого элемента:
ZGoweUptazlOMnBJYXpsc1prMWlUekl4Sm1ROVdWZHJPV1ZFVW1wVk1GcFdUWHBSYldOSGJ6bE5RUzB0Sm5NOVkyOXVjM1Z0WlhKelpXTnlaWFFtZUQwME5B4oCT: YTdlMTNlYTM3NDBiOTMzNDk2ZDg4NzU1ZmYzNDFiZmI4MjQ4MDVhNg ==
Ожидаемый результат:
ZGoweUptazlOMnBJYXpsc1prMWlUekl4Sm1ROVdWZHJPV1ZFVW1wVk1GcFdUWHBSYldOSGJ6bE5RUzB0Sm5NOVkyOXVjM1Z0WlhKelpXTnlaWFFtZUQwME5BLS06YTdlMTNlYTM3NDBiOTMzNDk2ZDg4NzU1ZmYzNDFiZmI4MjQ4MDVhNg ==
Разница между «каждым элементом» и ожидаемым результатом составляет всего несколько символов, соответствующих концу client_ID и двоеточию.
B4oCT: должно быть BLS06.
Ссылки на полную документацию:
https://developer.yahoo.com/dsp/api/docs/authentication/tokens.html
https://developer.yahoo.com/dsp/api/docs/traffic/info/sandbox.html
Обновление:
Последний символ Client_ID - '-'. Это какой-то нестандартный символ, который интерпретируется как две черточки, т. Е.'-- 'в utf-8 и windows 1258.