E企盈营销工具技术服务商 热线:4006-838-530

小程序客服消息

E企盈直播平台营销卖货系统

前几天需要做一个小程序后台自动回复功能。没怎么接触过,遇到了不少坑,所以总结一下。思路大概是,用户在小程序中点击客服按钮后。微信服务器会发送get请求到我们在微信平台配置好的服务器地址验证。然后根据用户的消息发送对应的数据包,数据格式也是自己配置好的。后台拿到用户的请求数据后,按照自己的业务逻辑处理。然后请求微信的发送客服消息给用户接口,根据业务逻辑,下发不同类型的消息给微信服务器,然后微信服务器就会返回给用户。40003不合法的 OpenID,请开发者确认 OpenID 是否是其他小程序的 OpenID遇到40003的问题。如果确定openid获取正确,则是因为传参时,openid没有带上” “所致。调用这个接口传的参数是要以json格式来传的。以文本类型的参数为例:@Testpublic void test_111() {    String access_token = “access_token”;    String open_id = “open_id”;    String url = “https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=” + access_token;    MapString, String param = new HashMap();    param.put(“access_token”, access_token);    param.put(“touser”, open_id);    param.put(“msgtype”, “text”);    param.put(“content”, “hello world”);    String json = JSON.toJSONString(param);    String result = sendPost(url, json);    System.out.println(“result=” + result);}public String sendPost(String url, String data) {        String response = null;        try {            CloseableHttpClient httpclient = null;            CloseableHttpResponse httpresponse = null;            try {                httpclient = HttpClients.createDefault();                HttpPost httpPost = new HttpPost(url);                RequestConfig requestConfig = RequestConfig.custom()                        .setSocketTimeout(4000).setConnectTimeout(4000).build();                httpPost.setConfig(requestConfig);                httpPost.setHeader(“Content-Type”, “application/json;charset=utf-8”);                 StringEntity stringentity = new StringEntity(data, “utf-8”);                stringentity.setContentEncoding(“utf-8”);                httpPost.setEntity(stringentity);                httpresponse = httpclient.execute(httpPost);                response = EntityUtils.toString(httpresponse.getEntity());            } finally {                if (httpclient != null) {                    httpclient.close();                }                if (httpresponse != null) {                    httpresponse.close();                }            }        } catch (Exception e) {            e.printStackTrace();        }        return response;    }如果参数是通过字符串拼接,需要对参数进行一次json转换,否则在下发文本类型的消息时,content内容有中文时,会遇到44004的错误。Object obj = JSONValue.parse(param_);String json = obj.toString();

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 小程序客服消息
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏