@Override public HttpRequest sign(HttpRequest request, String key, String secret) throws LtiSigningException { CommonsHttpOAuthConsumer signer = new CommonsHttpOAuthConsumer(key, secret); try { String body = getRequestBody(request); String bodyHash = new String(Base64.encodeBase64(md.digest(body.getBytes()))); HttpParameters params = new HttpParameters(); params.put("oauth_body_hash", URLEncoder.encode(bodyHash, "UTF-8")); signer.setAdditionalParameters(params); signer.sign(request); } catch (OAuthMessageSignerException|OAuthExpectationFailedException|OAuthCommunicationException|IOException e) { throw new LtiSigningException("Exception encountered while singing Lti request...", e); } return request; }
public static HttpPost buildReplaceResult(String url, String key, String secret, String sourcedid, String score, String resultData, Boolean isUrl, String messageId) throws IOException, OAuthException, GeneralSecurityException { String dataXml = ""; if (resultData != null) { String format = isUrl ? resultDataUrl : resultDataText; dataXml = String.format(format, StringEscapeUtils.escapeXml(resultData)); } String messageIdentifier = StringUtils.isBlank(messageId) ? String.valueOf(new Date().getTime()) : messageId; String xml = String.format(ReplaceResultMessageTemplate, StringEscapeUtils.escapeXml(messageIdentifier), StringEscapeUtils.escapeXml(sourcedid), StringEscapeUtils.escapeXml(score), dataXml); HttpParameters parameters = new HttpParameters(); String hash = getBodyHash(xml); parameters.put("oauth_body_hash", URLEncoder.encode(hash, "UTF-8")); CommonsHttpOAuthConsumer signer = new CommonsHttpOAuthConsumer(key, secret); HttpPost request = new HttpPost(url); request.setHeader("Content-Type", "application/xml"); request.setEntity(new StringEntity(xml, "UTF-8")); signer.setAdditionalParameters(parameters); signer.sign(request); return request; }
oAuthConsumer.sign(request);
myConsumer.sign(request); } catch (OAuthMessageSignerException e1) {
public void signRequest(HttpRequest request) { int retries = 3; if (consumer == null) { buildConsumer(); } while (retries-- > 0) { try { if (consumer != null) { // We need to remove the previous Authorization header // because signpost fails to sign a second time otherwise. request.removeHeaders("Authorization"); consumer.sign(request); return; } } catch (OAuthException e) { e.printStackTrace(); } login(); } }
myConsumer.sign(request); } catch (OAuthMessageSignerException e1) {
request.getOAuthConsumer().sign(httpRequest);
request.getOAuthConsumer().sign(httpRequest);