有趣的 FeedBurner 實驗

2008 年 五月 6 日 (星期二) 3:07 pm
分類:職場, 電腦
標籤:,

FeedBurner 很方便,服務對象已經不限於一般的 blog,甚至連 Crave 科技瘋這樣的媒體也開始借用它的服務。

不過有時候還真是「橫看成嶺側成峰,遠近高低各不同」呀。

請在 Unix 底下進行以下有趣的實驗。先從最簡單的開始吧:

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0

HTTP/1.0 200 OK
[略]
Content-Type: text/xml;charset=utf-8

如果隨便加一段 User-Agent 資訊:

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0
User-Agent: Mozilla/5.0

HTTP/1.0 200 OK
[略]
Content-Type: text/xml;charset=utf-8

如果再隨便加一段 Referer 資訊:

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0
User-Agent: Mozilla/5.0
Referer: http://www.google.com/

HTTP/1.0 200 OK
[略]
Content-Type: text/xml;charset=utf-8

看起來都很正常,都可以拿到我們想要的 RSS 資訊。

如果把最後一個例子的 User-Agent 欄位填上完整的內容:

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4
Referer: http://www.google.com/

HTTP/1.0 200 OK
[略]
Content-Type: text/html;charset=utf-8

咦?拿到的東西為什麼會從 RSS 變成 HTML 格式了呢?

呃,如果強制加上一段 Accept 設定,應該就沒問題了吧?

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4
Accept: application/rss+xml, application/atom+xml, text/xml
Referer: http://www.google.com/

HTTP/1.0 200 OK
[略]
Content-Type: text/html;charset=utf-8

唉唉唉,Accept 無效……

看起來,好心提供 User-AgentReferer,反而被 FeedBurner 嫌煩;若是懶惰一點,單獨把 User-Agent 拿掉:

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0
Accept: application/rss+xml, application/atom+xml, text/xml
Referer: http://www.google.com/

HTTP/1.0 200 OK
[略]
Content-Type: text/xml;charset=utf-8

或是單獨把 Referer 拿掉:

% telnet feeds.feedburner.com 80
HEAD /cnettw/crave HTTP/1.0
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4
Accept: application/rss+xml, application/atom+xml, text/xml

HTTP/1.0 200 OK
[略]
Content-Type: text/xml;charset=utf-8

就能正常拿到 RSS 格式的內容了。

唉,我只能說,FeedBurner,我真是搞不懂你呀……


◤建議您一併閱讀以下文章:


3 項留言回應 給 “有趣的 FeedBurner 實驗”

  1. 1 有趣的 FeedBurner 實驗 引用:

    funny sunday wrote an interesting post today on
    Here’s a quick excerpt [...]

  2. 2 Drake 留言:

    是因為要讓使用「沒有直接支援 rss 的 browser」在開啟 rss 時,是以「人看得懂的方式」呈現囉?

    題外話,William 怎麼會想要測試這個?

  3. 3 william 留言:

    FeedBurner 的用意很好,但問題在於忽略了「Accept」這個指令。

    FeedBurner 這個問題,是我 trace HTTP protocol 的副產品。

留言回應

[檢核碼]  


Allowed XHTML tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

本站已啟用 spam 防護機制。為避免系統誤判,請在按下按鈕之前,先備份您的留言,以防不測。如果您一直無法順利留言,請改用 email 方式。
此外,如果您想留的言與本篇文章及討論串無關,也請轉而點選這裡。謝謝您!