08-07
04

Java实现TrackBack BLOG技术

Trackback这个博客重要技术之一,个人觉得是一个很好创意技术,把相关主题的日志文章自然而然的联系在一起了,同时尊重作者创作劳动果实。
那Trackback有什么作用呢?

1、保存自己的文字。如果你朋友的blog上写评论,会有找不到的可能,但是如果你写的是TrackBack,就可以在你自己的blog上保存这些字,不至于丢失。

2、修改你的评论。你不能修改发表在别人blog上的评论,但可以修改TrackBack,甚至删除。

3、创建了一个TrackBack其实就是创建了一个你感兴趣的文章的联接。

那如何实现呢?以下为本人用JAVA封装好Trackback ping程序,分享关注者。

package tools;
import java.io.*;
import java.net.*;
public class TrackbackPing
{
/****************************************************************************
  *@作者:王春平
  *@功能:实现Trackback ping 功能
  *@参数说明:pingUrl目标PING地址,title日志标题,myBlogUrl博客地址,myExcerpt摘要,blogName博客名称
  *@时间:2007年7月11号
  *@邮箱:wangchunping209@163.com
  ***************************************************************************/
public String isTrackbackPingOk(String pingUrl,String title,String myBlogUrl,String myExcerpt,
                        String blogName)
{
  String catch1="";
  String catch2="";
  int catchp1=0;
  int catchp2=0;
  String errorStr="";
  try
  {
   //以POST方式发送PING及参数***********************************************************
   String postStr="title="+title+"&url="+myBlogUrl+"&excerpt="+myExcerpt+"&";
   postStr+="blog_name="+blogName+"";
   URL trackbackUrl=new URL(pingUrl);
   HttpURLConnection pingHuc=(HttpURLConnection)trackbackUrl.openConnection();
   pingHuc.setDoOutput(true);
   OutputStreamWriter out=new OutputStreamWriter(pingHuc.getOutputStream(),"gb2312");
   out.write(postStr);
   out.flush();
   out.close();
   //发送结束**************************************************************************
  
   //发送之后读取返回页面数据,0表示PING成功,1表示失败***************************************
   BufferedReader readData=new BufferedReader(new InputStreamReader(pingHuc.getInputStream()));
   String pageLine=readData.readLine();
   while(pageLine!=null)
   {
    catchp1=pageLine.indexOf(catch1);
    catchp2=pageLine.indexOf(catch2);
    
    if(catchp1!=-1)
    {
     if(catchp2>0)
     {
      errorStr=pageLine.substring(catchp1+7,catchp2);
     }
     else
     {
      errorStr=pageLine.substring(catchp1+7);
     }
    }
    pageLine=readData.readLine();
   }
   readData.close();
   pingHuc.disconnect();
   //读取结束**************************************************************************
  }
  catch(Exception e)
  {
   System.out.println(e.toString());
  }
  return errorStr;
}



使用例子:
if(!(trackback.equals(""))||trackback!=null)
  {
  String myBlogUrl="http://wangchunping.blogcn.com";
  String blogName="王春平的博客";
  String isPingOk=tbp.isTrackbackPingOk(trackback, title, myBlogUrl, summary, blogName);


文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: WEB2.0 TrackBack blog
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.