Генератор подписи Oauth HMac для ЗДЕСЬ

Я хочу использовать HERE map api в своем проекте.

Согласно их документу, мне нужно сначала сгенерировать подпись, используя Oauth 1.0 HMAC-256.

Я следую ниже AAA sdk по ЗДЕСЬ карте: https://github.com/heremaps/here-aaa-java-sdk/blob/master/here-oauth-client/src/main/java/com/here/account/auth/SignatureCalculator.java

SignatureCalculator signatureCalculator = new SignatureCalculator(CONSUMER_KEY,CONSUMER_SECRET);
String signature = signatureCalculator.calculateSignature("GET","https://account.api.here.com/oauth2/token",
(System.currentTimeMillis()/1000L),RandomStringUtils.randomAlphanumeric(12), 
SignatureMethod.HMACSHA256,null,null);

Но я не могу сгенерировать токен с помощью этой подписи. Я получил ошибку ниже:

{"errorId": "ERROR-25b51579-57d0-4873-b82e-466519b8b6a4", "httpStatus": 401, "errorCode": 401202, "message": "Недопустимый заголовок авторизации клиента, ожидается формат подписанного запроса.", "error ":" invalid_request "," error_description ":" errorCode: '401202'. Недопустимый заголовок авторизации клиента, ожидается подписанный формат запроса. "}

Когда я пытаюсь сделать то же самое через почтальона, все работает идеально. Существует разница между подписью (сгенерированной почтальоном, который работает / сгенерирован с помощью java-кода)

pw7d5IVYFsYH0zNPNZJU7x3T6LUtDj8zzYw2hsUUlM =. -- Не работает. Создан с использованием библиотеки AAA here. tBWyomfDmgihh2kC% 2B14qYurOoPF% 2FYkpg7QyGpwgZ77A% 3D "- рабочая подпись, сгенерированная почтальоном

Я думаю, что делаю неправильное представление о поколении. Кто-нибудь может мне здесь помочь?


person Nagendra Nigade    schedule 04.03.2020    source источник


Ответы (1)


Вам необходимо выполнить кодировку подписи с помощью URLEncoding в формате UTF-8.

URLEncoder.encode("Signature_Generated_from_HMAC-SHA256","UTF-8")

Надеюсь это поможет.

person HERE Developer Support    schedule 08.05.2020