微信里检索kintone记录信息的方法

概要

近几年来使用微信公众号的人越来越多,我们的生活方式也随之发生了巨大变化。

kintone自然也不甘落后,紧跟时代步伐。

本篇文章将为大家介绍在微信公众号里检索kintone记录信息的方法。

简单地说,就是我们将在kintone里新建一个管理企业信息的应用,然后在微信公众号里输入关键字来检索该应用里的信息。

由于正式公众号需要认证,这次我们暂时使用微信公众账号测试号。

完成后的样子

webwxgetvideo.gif

准备

kintone设置

首先根据上面的设想来创建kintone应用。我创建的是简易版的企业信息管理应用。

字段类型 字段名称 字段代码 备注
创建人 创建人 创建人
创建时间 创建时间 创建时间
单行文本框 公司名 company

设为必填项

值为唯一

单行文本框 公司代表 representative
单行文本框 地域 area
单行文本框 所在地 address
单行文本框 公司电话 tel

应用创建成功后,输入三条数据

微信公众号设置

1. 访问微信公众平台,点击 “进入微信公众账号测试号申请系统”,申请微信公众账号测试号

2. 进入微信公众测试号

在测试号管理页面里,我们可以看到 appID 和 appsecret。把这两个信息记下来,接下来有用。

1048079c.png

3. 填写接口配置信息

此信息需要有自己的服务器资源。网上的云服务器资源很多,大家可以自由选择。

如果大家有带公网ip的服务器也可以使用,下面我们主要使用php环境(具体服务器配置方式省略)

接下来写服务器验证代码,使之能正确响应微信发送的Token验证。详细可以参考接入指南

1048079d.png

代码

<?php
define("APPID", "wxcbfaxxxxxx1814d4");  //appID
define("APPSECRET", "604113xxxxxxxxxxxxxxx0bda2240c47"); //appsecret 
define("TOKEN", "cnDevNet"); //Token

require "./wechat.inc.php";
$wechat = new WeChat(APPID, APPSECRET, TOKEN);
$wechat->valid(); //Token验证
?>
class WeChat
{
    private $_appid;
    private $_appsecret;
    private $_token;
    
    public function __construct($appid, $appsecret, $token)
    {
        $this->_appid = $appid;
        $this->_appsecret = $appsecret;
        $this->_token = $token;
    }

    public function valid()
    {
        $echoStr = $_GET["echostr"];

        //valid signature , option

        if($this->checkSignature())

        {
            echo $echoStr;
            exit;
        }
    }

    private function checkSignature()
    {
        $signature = $_GET["signature"];
        $timestamp = $_GET["timestamp"];
        $nonce = $_GET["nonce"];

        $token = $this->_token;
        $tmpArr = array($token, $timestamp, $nonce);
        sort($tmpArr);
        $tmpStr = implode( $tmpArr );
        $tmpStr = sha1( $tmpStr );
        
        if( $tmpStr == $signature )
        {
            return true;
        }
        else
        {
            return false;
        }
    }
}

点击接口配置信息的 “修改”,填好URL 和 Token后,点击 “提交” 按钮。

看到以下信息的话,说明配置成功。

和kintone关联

下面是主要的原理图。微信将消息转发给服务器,服务器和kintone交互后,将结果再返回给公众号。

和kintone的交互,我们主要使用curl工具和kintone的API来检索记录,具体可以参考php文档kintone API:批量获取记录(在查询中指定条件)

// 请求头部
$header = array(

    "Host: " . $this->_subDomain . ".cybozu.com:443",
    "X-Cybozu-API-Token: " . $this->_apiToken
);

$queryStr = 'company like "'. $keyword. '"';
$params = "?app=$this->_appId&query=".urlencode($queryStr)
            . "&fields[0]=". urlencode("company")
            . "&fields[1]=". urlencode("representative")
            . "&fields[2]=". urlencode("area")
            . "&fields[3]=". urlencode("address")
            . "&fields[4]=". urlencode("tel");

$url = "https://" . $this->_subDomain . ".cybozu.com/k/v1/records.json". $params;

$response = $this->_request($url, true, "get", null, $header); //curl提交
$result = json_decode($response, true);

if (count($result["records"]) > 0) {
    foreach($result["records"] as $value) {
        if ($contentStr != '') {
            $contentStr .= "\n\n";
        }
        $contentStr .= "公司名:".     $value["company"]["value"]."\n"
                        . "公司代表:". $value["representative"]["value"]."\n"
                        . "地域:".     $value["area"]["value"]."\n"
                        . "所在地:".   $value["address"]["value"]."\n"
                        . "电话:".     $value["tel"]["value"];
    }
}
else {
    $contentStr = "未找到该企业信息";
}

详细代码

全部的代码可点这里查看

参考

微信公众平台技术文档

以上就是微信里检索kintone记录信息的方法的详细内容,更多请关注编程之家其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


网页授权获取用户信息的方法
报错config:invalid signature的解决方案
微信开发百思不得姐实战教程
详解微信开发input输入框
教你libco是如何支撑巨大数据信息量的
微信二次开发之文本消息请求与发送
微信开发H5轻游戏
scroll-view完成列表页的方法详解
Java微信开发之自定义菜单的创建
微信开发之input控件的实例详解
微信开发Emoji表情的实例教程
微信开发中详解textarea的使用方法
微信开发中使元素占满全屏的方法介绍
微信开发之数据访问的方法详解
微信二次开发之各类型消息封装
微信开发之数据库操作
如何获取微信好友的地理位置信息
分享3款微信开发开源框架
微信开发之获取服务器IP
微信开发之公交换乘功能代码详解