你好,欢迎来到武汉新一点网络科技有限公司!
新闻动态
媒体报道
 
微信多客服务API开发-添加、更新、上传、删除

看到微信API文档加入了多客服务接口,就想着把它的功能集成到本站的WP微信插件里,开发过程中因为文档的误导,真是坑人不小的,微信就不能写文档认真点么?不过总归后得到解决,先看下效果图:
wechat-post-customer

添加一个多客服帐号,还可以上传头像哦
wechat-post-add-customer

下面是官方文档坑人的API 截图:
uploadheader

如上图,开始自己留意到http://开头是错误的,但万万没想到,自己核对过参数和API的url都没错的情况下,居然给我报48001 即API没有被授权!我就郁闷,我用多客服的其他add 、update、del接口都没问题,怎么这个上传upload头像就没授权呢?
无奈之下找微信官方客服,一番令人无语的问答后,终解决了!原来是API的URL上的/customservice/kfacount/中的kfaccount少了个c,真是操啊!!

以下代码只作参考,毕竟大家所写的方式不同,我的处理过程是,取到表单数据后,先提交给多客服的add接口,成功后,再upload头像,后再写进数据库!流程处理的代码如下:


 

 
/*
     * 添加多客服帐号
     */
    public function add_customer() {
        $data = array();
        foreach($_POST['customer'] as $items ) {
            if( ! empty($items['value'])) {
                $key = $items['name'];
                $val = $items['value'];
                if($key == 'media_file') {
                    $img_url = $val;
                    continue;
                }
                if($key == 'password') {
                    $original_pass = $val;
                    $val = md5($val);
                }
                $data[$key] = $val;
            }
        }
        $res = $this->call('/kfaccount/add', $data, self::JSON, self::API_TYPE_SERVICE);
        if($res) {
            if($img_url) {
                $this->upload_customer_header($img_url, $data['kf_account']);
                $data['local_headimgurl'] = $img_url;
            }
            global $wpdb;
            $table = $wpdb->prefix.'wechat_customer';
            if( ! empty($original_pass)) $data['password'] = $original_pass;
            $wpdb->insert($table, array_merge($data, array('create_time' => time())));
            exit('ok');
        }
        exit('errcode: '.$this->_error_number.' errmsg: '.$this->_error);
    }

 

 

要改Wechat-JSON.php API类,新增多客服接口上传方法:


 

 
//上传多客服头像 必须是jp
                                                                                    
                                                                                
 

发布时间 2015/9/4