我是GAE的新手,並且正在努力研究如何基於存儲在服務上的數據託管一個RSS訂閱源。 到目前爲止,我無法通過閱讀文檔來找到明顯的方法。 任何人都可以給我一些指針,我應該使用什麼API?主持一個動態的RSS訂閱
0
A
回答
1
爲什麼你需要一個API?您可以使用常規查詢類查詢更新的數據,並使用標準Python XML工具(如ElementTree)輸出該提要。
0
得到一個快速的解決方案,最簡單的方法是gae-rest,但它是作爲老在2008年你會發現我的解決方案有幫助的呈現我的數據到的GeoRSS模板,所以這裏是我的解決方案:
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml">
<title>{{host}}</title>
<link href="http://{{host}}" rel="self"/>
<id>http://{{host}}/</id>
<updated>2011-09-17T08:14:49.875423Z</updated>
<generator uri="http://{{host}}/">{{host}}</generator>
{% for ad in ads %}
<entry>
<title><![CDATA[{{ad.title}}]]></title>
<link href="http://{{host}}/vi/{{ad.key.id}}"/>
<id>http://{{host}}/vi/{{ad.key.id}}</id>
<updated>{{ad.modified.isoformat}}Z</updated>
<author><name>{{ad.title|escape}}</name></author>
<georss:point>{{ad.geopt.lon|floatformat:2}},{{ad.geopt.lat|floatformat:2}}</georss:point>
<published>{{ad.added}}</published>
<summary type="xhtml"><div xmlns="http://www.w3.org/1999/xhtml">{{ad.text|escape}}</div>
</summary>
</entry>
{% endfor %}
</feed>
處理器:
class GeoRSS(webapp2.RequestHandler):
def get(self):
start = datetime.datetime.now() - timedelta(days=60)
count = (int(self.request.get('count'
)) if not self.request.get('count') == '' else 1000)
try:
ads = memcache.get('ads')
except KeyError:
ads = Ad.all().filter('modified >',
start).filter('published =',
True).order('-modified').fetch(count)
memcache.set('ads', ads)
template_values = {'ads': ads, 'request': self.request,
'host': os.environ.get('HTTP_HOST',
os.environ['SERVER_NAME'])}
dispatch = 'templates/georss.html'
path = os.path.join(os.path.dirname(__file__), dispatch)
output = template.render(path, template_values)
self.response.headers["Cache-Control"] = "public,max-age=%s" % 86400
self.response.headers['Content-Type'] = 'application/rss+xml'
self.response.out.write(output)
1
這與提供動態HTML頁面沒有任何區別。完成與提供HTML模板完全相同的方式,但生成RSS或Atom而不是HTML。
相關問題
- 1. 點擊一個DIV訂閱RSS訂閱
- 2. 建立一個RSS訂閱
- 3. 翻閱RSS訂閱
- 4. RSS訂閱LINQ
- 5. 訂閱RSS源
- 6. ASP.Net RSS訂閱
- 7. 閱讀vb.net中的RSS訂閱源,rss訂閱源是php
- 8. 製作一個RSS訂閱點擊
- 9. RSS訂閱WordPress(.COM)
- 10. Oracle 11g RSS訂閱
- 11. 過濾RSS訂閱
- 12. Actionscript 3.0 RSS訂閱
- 13. 管理RSS訂閱
- 14. 用PHP RSS訂閱
- 15. RSS訂閱解析
- 16. 動態訂閱/取消訂閱活動
- 17. RSS訂閱RSS源中的HTML代碼
- 18. Google Play Store的RSS訂閱
- 19. RSS訂閱Interative的檢索
- 20. 簡單的RSS訂閱
- 21. 問題,我的RSS訂閱
- 22. Android的新聞RSS訂閱
- 23. 從RSS訂閱通用的Windows應用程序動態磁貼
- 24. 閱讀複雜的RSS訂閱
- 25. 閱讀與MVC4的RSS訂閱
- 26. 對一個主題的JMS多次持久訂閱
- 27. 動態分享信息使用RSS訂閱
- 28. 將rss訂閱源異步放入動態頁面 - wordpress
- 29. RSS訂閱怪異字符
- 30. Facebook RSS訂閱大圖
我明白了!出於某種原因,我認爲你只能使用它的網頁,除非你使用了一些特殊的API。 – BenBtg
@BenBtg不,App Engine不關心你提供的MIME類型,或者響應的組成部分。 –