2010-08-24 75 views
0

我正在嘗試發佈狀態更新至Twitter。我寫了一個API調用,這樣,當我做向Twitter發送狀態。瀏覽器與代碼

http://.....&token= $令牌& S = $ token_secret &味精=你好......當我輸入網址到瀏覽器正常工作。狀態已正確發佈。但是,當我想通過file_get_contents($ url)發佈狀態,其中$ url與瀏覽器的工作方式相同時,我收到「未能打開流:HTTP請求失敗!HTTP/1.0 401未經授權「

我做了一些測試,並且它與url編碼無關。我正在那樣做。

因此,有誰知道它爲什麼通過瀏覽器,但不通過代碼? Twitter是否阻止非瀏覽器用戶代理?

非常感謝您的幫助。

回答

0

聽起來像當你在瀏覽器中嘗試它時,你是以你自己的身份登錄的,所以你的帖子正在經歷。但是,當您在代碼中運行它時,它不會發送您的Cookie,因此未登錄,因此無權發佈。

您的代碼是否嘗試登錄?

+0

感謝您的猜測。我們意識到問題實際上是Apache授權安全性......當通過瀏覽器進行操作時,我們只需使用我們的憑據登錄,並且由於瀏覽器保存了我們的憑據,所以我們忘記了我們必須這樣做。一些簡單的CURL頭文件在代碼中用apache服務器授權來解決這個問題。 – apexdodge 2010-09-16 16:19:31