杭州神话信息技术有限公司

标题: 记事狗微博如何通过api接口提交自定义字段的微博 [打印本页]

作者: someeyes    时间: 2012-5-10 12:19:00     标题: 记事狗微博如何通过api接口提交自定义字段的微博


大家都知道,记事狗微博3.5后,功能很吸引人,执行效率也提高了不少,唯一遗憾的api还是没有开源。
多的不说了,开始动工。接口的基本操作我就不说了,自己找文档吧。

记事狗微博的接口提交数据,是以array()的方式提交,所以无论你提交什么参数,接口都是可以接收到的,只是,接口程序不做处理,我说的就是怎么把提交的数据保存到数据库。拿最新版本的记事狗微博3.5为例,低版本的可以参照修改,原理都是一样的。

首先看下jishigouapi.php里的function Addtopic
    function AddTopic($text,$totid=0,$type='first')
    {
        $params = array(
            'mod' => 'topic',
            'code' => 'add',
            'content' => $text,
            'totid' => $totid,
            'type' => $type,
        );
        
        return $this->Request($params);
    }
我做如下修改
    function AddTopic($params){
        return $this->Request($params);
    }
参数,我改成了数组,这样便于自定义提交的信息。
接口定义部分我就不写了,直接来提交的调用
$data = array(
'mod' => 'topic',
'code' => 'add',
'content' => $content,
'totid'=>$tid,
'from'=>'web',
'type'=>'reply',
'item' => 0,
'item_id' => 0,
'longtextid' => 0,
'xxxxxx' => 1,//这个就是自定义的参数了
);
$_return=$this->JishiGouAPI->AddTopic($data);
提交部分完成。现在开始记事狗接收部分的修改。
修改文件 include\logic\topic.logic.php
function add

搜索一下 $data['uid'] = $uid = max(0, (int)($uid ? $uid : MEMBER_ID));
再后面加上自己提交的字段就可以了。
$data['xxxxxx'] = max(0, (int) ($_POST['xxxxxx'] ? $_POST['is_heart'] : 0));
xxxxxx,再topic表里定义该字段。

收工了,具体细节自己体验吧。多试多分析,会发现很多技巧。

作者: someeyes    时间: 2012-5-10 13:46:26

没人顶啊,自己顶下。
作者: xfteacher    时间: 2012-5-10 15:19:31

恩,不错!
但,你怎么还说是没开源呢?
作者: yachtxiao    时间: 2012-5-10 20:00:57

其实是开源的,就算你看到的是加密的,也是有解密工具可以解的,去年我就搞定了。




欢迎光临 杭州神话信息技术有限公司 (http://www.cenwor.com/) Powered by Discuz! X2