URI uri = new URI(oauthRequest.getCompleteUrl()); ((RequestWrapper) request).setURI(uri);
@Override public void signRequest(String accessToken, OAuthRequest request) { // sig = md5(params + secret_key) request.addQuerystringParameter("session_key", accessToken); request.addQuerystringParameter("app_id", getApiKey()); final String completeUrl = request.getCompleteUrl(); try { final String clientSecret = getApiSecret(); final int queryIndex = completeUrl.indexOf('?'); if (queryIndex != -1) { final String urlPart = completeUrl.substring(queryIndex + 1); final Map<String, String> map = new TreeMap<>(); for (String param : urlPart.split("&")) { final String[] parts = param.split("="); map.put(parts[0], (parts.length == 1) ? "" : parts[1]); } final StringBuilder urlNew = new StringBuilder(); for (Map.Entry<String, String> entry : map.entrySet()) { urlNew.append(entry.getKey()); urlNew.append('='); urlNew.append(entry.getValue()); } final String sigSource = URLDecoder.decode(urlNew.toString(), "UTF-8") + clientSecret; request.addQuerystringParameter("sig", md5(sigSource)); } } catch (UnsupportedEncodingException e) { throw new IllegalStateException(e); } }
private OAuth10aService createAndSignRequest(String apiKey, String sharedSecret, OAuthRequest request) { RequestContext requestContext = RequestContext.getRequestContext(); Auth auth = requestContext.getAuth(); OAuth10aService service = createOAuthService(apiKey, sharedSecret); if (auth != null) { OAuth1AccessToken requestToken = new OAuth1AccessToken(auth.getToken(), auth.getTokenSecret()); service.signRequest(requestToken, request); } if (proxyAuth) { request.addHeader("Proxy-Authorization", "Basic " + getProxyCredentials()); } if (Flickr.debugRequest) { logger.debug("POST: " + request.getCompleteUrl()); } return service; }
logger.debug("GET: " + request.getCompleteUrl());