在flickr中创建oauth_签名以获取访问令牌

在flickr中创建oauth_签名以获取访问令牌,oauth,flickr,Oauth,Flickr,我是flickr API的新手。在某些地方,我获得了创建用于获取请求令牌的签名的代码。但我无法为访问令牌创建签名。总是说签名无效 我正在使用创建签名的代码是 private static String getreqSignature(String url, String params) throws UnsupportedEncodingException, NoSuchAlgorithmException, InvalidKeyException

我是flickr API的新手。在某些地方,我获得了创建用于获取请求令牌的签名的代码。但我无法为访问令牌创建签名。总是说签名无效

我正在使用创建签名的代码是

private static String getreqSignature(String url, String params)
            throws UnsupportedEncodingException, NoSuchAlgorithmException,
            InvalidKeyException {
    StringBuilder base = new StringBuilder();
            base.append("GET&");
            base.append(url);
            base.append("&");
            base.append(params);
            System.out.println("Stirng for oauth_signature generation:" + base);
            // yea, don't ask me why, it is needed to append a "&" to the end of
            // secret key.
            byte[] keyBytes = (ApplicationContext.getFLICKR_API_SECRET() + "&")
                    .getBytes(ENC);

            SecretKey key = new SecretKeySpec(keyBytes, HMAC_SHA1);

            Mac mac = Mac.getInstance(HMAC_SHA1);
            mac.init(key);
            System.out.println(new String(base64.encode(mac.doFinal(base.toString()
                    .getBytes(ENC))), ENC));
            // encode it, base64 it, change it to string and return.
            return new String(base64.encode(mac.doFinal(base.toString().getBytes(
                    ENC))), ENC).trim();

}
我的查询参数是

qparams.add(new BasicNameValuePair("oauth_consumer_key","******"));
    qparams.add(new BasicNameValuePair("oauth_nonce", ""+ (int) (Math.random()                                                           * 100000000)));
    qparams.add(new BasicNameValuePair("oauth_signature_method","HMAC-SHA1"));
    qparams.add(new BasicNameValuePair("oauth_timestamp", ""+ (System.currentTimeMillis() / 1000)));
    qparams.add(new BasicNameValuePair("oauth_version", "1.0"));

    // generate the oauth_signature
    String signature = getreqSignature(URLEncoder.encode(
            "http://www.flickr.com/services/oauth/request_token", ENC),
            URLEncoder.encode(URLEncodedUtils.format(qparams, ENC), ENC));



    // qparams.add(new BasicNameValuePair("oauth_verifier", verifier));
    qparams.add(new BasicNameValuePair("oauth_signature", signature));

    URI uri = URIUtils.createURI("http", "www.flickr.com", -1,
            "/services/oauth/request_token",
            URLEncodedUtils.format(qparams, ENC), null);

如何创建签名以获取访问令牌。在上面的代码中要更改什么。

最后,我使用Scribe库获取详细信息。工作正常