Google Feed API が使えなくなって困っている人が多いので、代替のライブラリを作りました!
Access-Control-Allow-Originのヘッダを設定していないサーバー、クライアント側で処理するのに大きすぎるフィード等があるため、RSSフィードを直接ブラウザで読み込むのが不可能な場合があるので、バックエンドも用意しました。
レスポンスは、デフォルトでGoogleのAPIより純RSSに近い形式ですが、Google Feed API使っていた人のために、GoogleのAPIのレスポンスっぽい物にするヘルパー関数も用意しました。
アカウント登録とAPIキー取得
まずSekando Web Toolkitでアカウントを作ってください。ログインすれば、ホストネームの登録が可能になります。「Hostname」の画面からウェブサイトのホストネームを登録してください。Sekando Web Toolkitは、開発環境で無料で使うことができます。プロダクションで使う場合は月額1080円です。
ホストネームの登録を完了すると、APIキーを取得できます。
フィードを読み込む
<script src="https://static.sekandocdn.net/static/feednami/feednami-client-v1.1.js"></script>
<script>
feednami.setPublicApiKey('3f698f4f37395ab3f1764efd691260209b98f5bd618fa44fa8db198ec0d398ab')
feednami.load('http://devblog.ricky.me/rss.xml')
.then(feed => {
for(const entry of feed.entries){
console.log(entry.title)
}
})
</script>
Google APIを使っていた人のために
feednami.loadGoogleFormat
はできる限りGoogle APIに近いレスポンスを返す.例えば、記事のcontent
が <content>
、<summary>
、<description>
、いずれか一つの値になる。
<script>
var url = 'http://devblog.ricky.me/rss.xml'
feednami.loadGoogleFormat(url,function(result){
if(result.error){
console.log(result.error)
}
else{
var entries = result.feed.entries
for(var i = 0; i < entries.length; i++){
var entry = entries[i]
console.log(entry.title)
console.log(entry.contentSnippet)
// the first 120 characters of the entry
}
}
})
</script>
Website:https://feednami.com
中の人のTwitter:@richardkazuo