2011-11-05 124 views
1

我想用Matlab測試Flickr API。沒有可用於Matlab的Flickr API庫,所以我必須自己做所有事情。Flickr OAuth認證

我在開始時有很多麻煩:無法應付認證。過程描述在這裏:http://www.flickr.com/services/api/auth.oauth.html。不過,我不明白,在簽名請求兩件事情:

首先,

the key is the concatenated values of the Consumer Secret 
and Token Secret, separated by an '&'. 

什麼是消費者的祕密和令牌機密?我只有API密鑰和API祕密,由Flickr爲我的測試應用程序發佈。

其次,在該示例中對字符串(應該是HMAC SHA1函數的輸出,即數字,對嗎?)的簽名結果是w18YS2bONDPL%2FzgyzP5XTr5af4%3D。它是什麼?它既不是十六進制數也不是base64字符串。

+1

我想我已經找到了這兩個問題的答案(對不起,我應該先發布問題以突然找到答案;但我花了整整一天的時間)。消費者祕密是Flickr提供的應用程序的祕密鑰匙。令牌祕密在初始階段不可用,所以應該排除在外。奇怪的字符串實際上是一個base64字符串,但是url安全編碼。我會再試一次並在此發佈結果/新問題。 – texnic

+0

嗯,我能夠解決簽名問題,但我仍然無法強制flickr接受第一個令牌請求。 Matlab顯示'下載URL時出錯。您的網絡連接可能關閉或您的代理設置配置不正確,但是破解urlread功能會顯示錯誤401和403,因此實際上發生了一些情況。 – texnic

回答

1

您可能會發現從MATLAB構建接口到可用的Flickr API kits之一更容易。 MATLAB使調用C,Java和Perl特別簡單,所以這些可能是一個不錯的選擇。

+0

那麼,我真的想在Matlab中實現整個事情。如果你喜歡,可以把它當作練習。所以我不需要它很容易。 – texnic

+0

好的 - 祝你好運。如果你願意,當你完成後,如果你能發表你的經驗,那將是非常好的。我已經嘗試過,並且未能在純MATLAB中做類似的事情(Notifo API而不是Flickr),我不得不訴諸於調用其他語言。 –