#api #encryption #postman #sha256 #postman-pre-request-script
Вопрос:
У нас есть 3 параметра, которые нам нужно отправить через API. Один из них — «apikey», который является уже предоставленным кодом, другой — «utcTimeStamp», а последний — «подпись».
Подпись состоит из результата шифрования с помощью алгоритма SHA256 следующих параметров:
апикей,приватекей,метка utcTimeStamp
(privatekey-это код, который также был предоставлен нам ранее).
Включая запятую между каждым параметром.
Как мы могли бы сгенерировать эту подпись с этими характеристиками и вернуть ее в качестве параметра?
Более подробная информация приведена на прилагаемом изображении.
Комментарии:
1. Пожалуйста, проясните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы точно указать, что вам нужно. Поскольку это написано в настоящее время, трудно точно сказать, о чем вы просите.
2. Документация/разработчики API, который вы используете, должны знать, как создать подпись. Например, API Slack использует это для проверки подписей: api.slack.com/authentication/verifying-requests-from-slack
Ответ №1:
Вы можете сделать это
let signature = CryptoJS.SHA256("some string").toString();
pm.environment.set("signature", signature);
Комментарии:
1. Извините за мое невежество, тогда мне следует скопировать и вставить этот код в сценарий предварительного запроса? И это выглядело бы более или менее так? пусть подпись = CryptoJS.SHA256(«apiKey,utcTimesatamp,другой код здесь»). toString(); pm.environment.set(«подпись», подпись);
2. вы могли бы сначала скрытно
apikey,privatekey,utcTimeStamp
связать, а затем передать его"some string"
. Пожалуйста, дважды проверьте, как структурировать подпись с разработчиками.3. Извините за мое невежество, но как бы я это сделал?