2

Deliciousには2セットのAPI認証があります。1つはユーザー名とパスワードを使用し、もう1つはoAuthを使用して、これから経験することについて何かを教えてくれました。間違いではありませんでした。残念ながら、私は今両方のAPIに対処する必要があり、API v2(Yahoo oAuth)の最初のハードルを乗り越えることができません。

これがコードスニペットです(この例ではOpenSocialを使用していますhttp://code.google.com/p/opensocial-net-client

public static string GetRequestToken(string callbackUrl)
{
    string normaluri;
    string normaluriparam;
    OAuthBase oAuth = new OAuthBase();
    string nonce = oAuth.GenerateNonce();
    string timeStamp = oAuth.GenerateTimeStamp();
    string sig = oAuth.GenerateSignature(new Uri(TOKEN_URL), ConfigurationManager.AppSettings[CONSUMER_KEY],
                                         ConfigurationManager.AppSettings[SECRET_KEY],
                                         string.Empty,
                                         string.Empty,
                                         "GET",
                                         timeStamp,
                                         nonce,
                                         OAuthBase.SignatureTypes.HMACSHA1,
                                         out normaluri,
                                         out normaluriparam);
    sig = HttpUtility.UrlEncode(sig);

    string result =
        HttpClient.Get(TOKEN_URL, new
                                      {
                                          oauth_nonce = nonce,
                                          oauth_timestamp = timeStamp,
                                          oauth_consumer_key = ConfigurationManager.AppSettings[CONSUMER_KEY],
                                          oauth_signature_method = "HMAC-SHA1",
                                          oauth_signature = sig,
                                          oauth_version = "1.0",
                                          oauth_callback = callbackUrl
                                      });

    return result;
}

http://delicious.com/help/oauthapiの指示に従って、OpenSocialに任せるかどうかは問題ではないようです。サーバーから「401Unauthorized」を取得しましたが、それ以上の情報はありません。

多くの人が同じ問題を抱えているのを見ることができますが、解決策を見つけることができませんでした。

4

1 に答える 1

1

答えは、「この段階ではHMAC-SHA1を使用しないでください。また、署名にcallbackUrlを含めるのを忘れました。

于 2010-03-30T10:38:38.480 に答える