Я интегрирую свое веб-приложение с AppDirect, . Для этого я создал API java rs с использованием трикотажа.Получение 401 при подписании HTTP-сообщения со значком
Когда я подписываюсь на событие, я получаю карту, содержащую значения oauth (ключ и секрет), чтобы подписать мой запрос и URL-адрес события, к которому я выдаю знак.
Я получаю эти значения (oauth и eventurl), как ожидалось.
Теперь, когда я пытаюсь выдать подписанные выборки с использованием библиотеки signpost, я использую следующий код:
OAuthConsumer consumer = new DefaultOAuthConsumer(consumer_key, secret);
// create an HTTP request to a protected resource
URL url = new URL(eventUrl);
HttpURLConnection request = (HttpURLConnection) url.openConnection();
// sign the request
consumer.sign(request);
// send the request
request.connect();
я получаю сообщение об ошибке:
getResponseMessage: Unauthorized
getresponsecode: 401
Я также попытался со следующим испытательные значения:
- url = "https://www.appdirect.com/api/integration/v1/events/dummyOrder";
- dummyKey = "Dummy";
- dummySecret = "secret"; Но у меня такой же результат.
Как я могу это исправить?
Я также попытался и добавить это:
request.setRequestMethod("GET");
request.setRequestProperty("Authorization", "OAuth");
request.setRequestProperty("Host", "...");
request.setRequestProperty("Content-Type", "application/xml");
request.setRequestProperty("oauth_nonce", oauth_nonce);
request.setRequestProperty("oauth_signature", oauth_signature);
request.setRequestProperty("oauth_signature_method", oauth_signature_method);
request.setRequestProperty("oauth_timestamp", oauth_timestamp);
request.setRequestProperty("oauth_version", oauth_version);
также попытался с key:secret
в собственности авторизации
Да, я уже использую OAuthConsumer consumer = new DefaultOAuthConsumer (consumer_key, secret); Я добавлю код – eeadev
Проверяю, я немного обновил ответ. – cingulata
У меня есть действующий ключ и секретный ключ, и я передаю его в свой объект DefaultOAuthConsumer. Где еще я буду использовать его? – eeadev