用java开发校内网小工具 (三)

作者: ldsea 分类: 程序生活 发布时间: 2008-01-13 17:35

校内网的日志是不允许写代码的,只能写文字,不过很多人已经可以往里面插入视频等等,我也会这个,是在“M-aple”和“大石”两位好友的帮助下知道的,后来也用C++Builder开发了一个这样的工具,可以发布多媒体日志,当时开发的方法可以说很烂,就是把发布新日志的代码保存为一个String,然后用软件将这个很长很长的String保存到生成的一个Html里面,然后在用软件打开本地的这个网页,繁琐的很~~

我的学的很烂,也说不清校内网过滤Html代码的原理具体是什么,不过我觉得用post数据的方法可以避开这个限制,呵呵,果然不出我所料,确实是这样的,post数据就可以轻松的突破这个限制,直接写Html代码了~~
最开始我很晕,我写日志后抓到的数据包是这样的:
引用

[code]—————————–7d7da93303e6
Content-Disposition: form-data; name="title"

biaoti2
—————————–7d7da93303e6
Content-Disposition: form-data; name="body"

neirong2
—————————–7d7da93303e6
Content-Disposition: form-data; name="blogControl"

99
—————————–7d7da93303e6
Content-Disposition: form-data; name="blog_pic_id"

—————————–7d7da93303e6
Content-Disposition: form-data; name="pic_path"

—————————–7d7da93303e6
Content-Disposition: form-data; name="relative_optype"

publisher
—————————–7d7da93303e6–[/code]

我晕,这是什么东西啊,后来上网查了踩知道这是form表单的提交方式,不同于先前的NameValuePair的post方式
Httpclient这个包真是太强大了…..自带了这种form表单的提交方式,呵呵,代码如下:
[code]PostMethod   post1   =   new   PostMethod("http://blog.xiaonei.com/NewEntry.do");
        System.out.println(post1.getStatusLine());
        StringPart title = new StringPart("title","你好123");
        title.setCharSet("utf-8");//转码,以正确显示汉字
        StringPart body = new StringPart("body","1234"); //在日志里写入html代码

        body.setCharSet("utf-8");//转码,以正确显示汉字
        StringPart blogControl = new StringPart("blogControl","99");
        StringPart blog_pic_id = new StringPart("blog_pic_id","");
        StringPart pic_path = new StringPart("pic_path","");
        StringPart relative_optype = new StringPart("relative_optype","publisher");
        StringPart[] parts = {title,body,blogControl,blog_pic_id,pic_path,relative_optype};
          
        post1.setRequestEntity(new MultipartRequestEntity(parts,post1.getParams()));
        httpClient.executeMethod(post1);
        System.out.println(post1.getStatusLine());
        post.releaseConnection();[/code]

成功^_^

界面如下
[img][attach]1[/attach][/img]
[img][attach]3[/attach][/img]

2条评论
  • yuwei162

    2010年11月4日 18:08

    你好,最近也正在钻研这方面的东西,但是在发表日志时总是得不到正确的结果,希望能得到你的指点。我qq:723488980,谢谢了。

  • yuwei162

    2019年4月24日 01:03

    你好,最近也正在钻研这方面的东西,但是在发表日志时总是得不到正确的结果,希望能得到你的指点。我qq:723488980,谢谢了。

回复 yuwei162 取消回复

您的电子邮箱地址不会被公开。