Я пытаюсь сгенерировать некоторую подпись для стороннего API и получаю следующую ошибку: Партнер не авторизован.Это означает, что я не закодировал свой поисковый запрос и не создал подпись.
Подпись - это закодированное хешированное значение метки времени, ключа доступа и условий запроса.
Ниже указан мой код:
const timestamp = Date.now();
const searchTerm = encodeURI(this.state.searchText);
const signature = sha1(timestamp + searchTerm);
Третий Для безопасности веб-страницы термин запроса должен быть закодирован в JavaScript перед его отображением на странице.Вот пример: queryTermEncoded = '@ HttpUtility.JavaScriptStringEncode (queryTerm)';
Как кодировать метку времени и подпись сверху, похоже, что encodeURI не работает и я не могу кодировать?Мне нужно как-то кодировать отметку времени и searchTerm.
Вот несколько примеров, написанных на Java, Ruby и т. Д.
http://www.infospace.com/partners/sdk/csr/signingSample.html