升级后如何才能方便的发布评论?

升级到 Blogger Beta后,由于大家无法访问 beta.blogger.com 域名,因此出现了无法发布评论的问题,在上次的帖子中有所讨论。

为了解决这个问题,我自己写了个简单的 Servlet,来接受来自页面上的评论发布,并将这个请求转到 Blogger Beta 上处理评论发布的地址 https://beta.blogger.com/comment.do,因为我可以修改服务器上的 host 文件使其可以访问 beta.blogger.com,这样可以起到一个类似代理的作用,代替需要发布评论的朋友们访问这个不能直接访问的域名。

理论上是没有问题的,实践上我也几乎取得了成功。出现的问题是:评论被正常发布后,和评论相关的帖子页面没有重建!

我们知道,用 FTP 的方式发布 Blogger,任何对帖子的更改,都会导致 Blogger 自动重建页面并自动发布到 FTP 相关的目录下,以使得 blog 网站上的页面能够反应出最近的信息,这些操作包括新增/修改/删除帖子,以及添加/删除评论。正常情况下,一旦有评论发布,这个重建的过程就会发生,这样评论能够在最多几分钟的时间内出现在页面上。

可是现在,评论的内容都出现在 Blogger Beta 自己的评论页面上了,但是却没有触发页面重建。不过,如果直接把页面上评论表单的内容提交到 https://beta.blogger.com/comment.do,则一切正确;但是当然这样做没有意义,因为这要求发布评论的朋友能够直接访问 beta.blogger.com 域名。

现在出现的现象会是,大家发布的评论不会立即显示在帖子页面上,但是实际上是已经被正确的保存了。我看到电子邮件的提示后,就会尽快重建页面使得这些评论能够被显示出来。相信这个问题只是暂时的,总归是应该得到解决的。

这个问题琢磨了一晚上也没有得到结果,Google 上也搜不出什么有用的东西来。已经把这个问题发布到了 Google 上的 Blogger Data API 讨论组求助,希望有人遇到过类似的问题从而给我一些提示。

Updated on 2006/11/17:
有一个更科学的方法来提交评论,那就是用 GData API 向单贴评论的 Feed 地址提交,不过仍然有些问题。详见“通过 GData API 提交评论”。

Updated on 2006/12/21:
Blogger 的某次更新似乎已经解决了评论提交后页面不会重建的问题。现在在页内的评论表单中提交评论,页面会被立即重建,只是由于需要重建的页面和以往的老 Blogger 比起来要多一些,因此会慢一点。一般 5 分钟之内评论就会出现在页面上了。

发表评论

Login with Sina Weibo account

或者,也可以直接用下面的表单。 电子邮件地址不会被公开。

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

11 条评论

  1. 交换友情链接吧,一经申请,就可以和平台上的能达到对方要求的网站进行友情链接,不要再为找不友情链接,而烦脑了,本系统对外公开、免费

  2. 就是说19号就只能改成19号以内的时间,本来18号写的,改了一点点也全部成了19号写的,回不到18号了,有什么办法改变吗拜谢!

  3. 你好,首先声明我是很菜的菜鸟,我被弄疯了,所有才来问你下面这个你看来如此简单的问题:为什么我在blogger上改不了时间,因为每次一修改文章,他就把时间计为修改时的时间了,可我怎么也改不回去了,晕死,能不能麻烦你抽空回答我一下?发到我的邮箱lune.huang@gmail.com拜谢啊

  4. Blogger 的某次更新似乎已经解决了评论提交后页面不会重建的问题。现在在页内的评论表单中提交评论,页面会被立即重建,只是由于需要重建的页面和以往的老 Blogger 比起来要多一些,因此会慢一点。一般 5 分钟之内评论就会出现在页面上了。

  5. 谢谢你的提醒!程序上有点问题,现在已经修正了。目前页内评论框已经可以使用了。

  6. 直接由发布后的 blogger 页面提交评论,虽然可能,但是却没有办法放到模版中对任何一片帖子都有效,因为这个表单中需要一个 securityToken 字段,这个是根据当前时间戳以及要发布的帖子 postID 生成的。如果你打开 Blogger Beta 发布评论的页面,你会在它的源代码中发现这个隐藏字段,而且每次刷新后这个字段的内容都不同。我自己写的 Servlet 可以办到,是因为我在向 Blogger Beta 提交评论信息之前,先在后台打开 Blogger Beta 的评论页并自动从 HTML 源代码中解析出这个隐藏字段,再和其它评论信息一并提交。帖子页面的 label 内容,在 Blogger 发布帖子的时候添加后自然就有,这个是作为帖子正文的一部分发布的。

  7. 可以发一下下面这个提交评论部分的代码么,到blogger beta的就可以另外帖子下面的label是添加后自动显示的么,这部分的代码是什么样子的多谢了