1

これらの手順https://secure.flickr.com/services/api/auth.oauth.htmlに従って、私の clojure プログラムに oauth を実装しています。

次のコードを使用すると、ステップ 3 まですべてが正常に機能します。(printlnsは戻り値を確認するためのものです)

(def consumer-key "0000")
(def consumer-secret "0000")

(def consumer (oauth.client/make-consumer consumer-key
            consumer-secret
            "http://www.flickr.com/services/oauth/request_token"
            "http://www.flickr.com/services/oauth/access_token"
            "http://www.flickr.com/services/oauth/authorize"
            :hmac-sha1))

(def request-token (oauth/request-token consumer "http://localhost:8080/authorize"))

(defn flickrauth []
         (def auth-url (oauth/user-approval-uri consumer
         (:oauth_token request-token)))
         (println (str auth-url "&perms=write")))

ブラウザに auth-url を入力すると、書き込み権限でアクセスを承認できます。

(defn get-access-token [oauth-token verifier]
         (println "CONSUMER: " consumer "REQ TOKEN: " oauth-token "verifier: " verifier)

次のコードでは、「oauth_problem=token_rejected, status 401」しか得られませんでした。したがって、リクエストトークンをアクセストークンに交換することに問題があると思います...

(def access-token-response (oauth/access-token consumer
                           request-token
                           verifier))

(println "ACCESS TOKEN RESPONSE: " access-token-response)

簡単な要約...リクエストトークンとベリファイアを取得しましたが、アクセストークンレスポンスでは別のoauth_tokenが使用されています..そして、理由がわかりません。

助けとヒントをありがとう!

4

0 に答える 0