JAVA调用易信接口向指定好友推送消息(二)POST测试
易信的API接口做的还算简单
http://open.yixin.im/document/oauth/api
根据指南上的步骤,利用易信提供的测试ID
AppID(client_id): yxbbd0e8b3dce64e02bab42437becc4384 AppSecret:5a1db5830047b4a
可以很容易获得access_token,以及指定联系人的toAccountId
下面,利用前几篇博文提到的apache http组件,向易信的web service提交测试请求
package com.newflypig.demo; import java.util.ArrayList;
import java.util.List; import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils; /**
* 向易信服务器发送POST请求示例
* @author newflydd
* 易信授权的相关数据如下:
* url:https://open.yixin.im/api/sendp2pmsg
* access_token:b2421624-db5c-44d1-93f0-1e71f9cXXXXX
* toAccountId:6c0f7514f4bdXXXX(唐蔚);fd60e46db0dc119cfea740c3375XXXXX(王群)
* content:需要推送的数据
* {"text_content": "这段文字发送自易信SDK示例程序,并且由服务器自动调用发送","desc": "不需要描述","type":"text"}
* {
"image": "http://img.hoop8.com/attachments/1510/911826782594.jpg",
"title": "新增发展积分",
"url": "http://img.hoop8.com/attachments/1510/911826782594.jpg",
"type":"image"
}
*
*/ public class SendPostToYixin { public static void main(String[] args) throws Exception{
HttpClient client=HttpClients.createDefault();
HttpPost post=new HttpPost("https://open.yixin.im/api/sendp2pmsg"); List<NameValuePair> parameters=new ArrayList<NameValuePair>();
parameters.add(new BasicNameValuePair("access_token", "b2421624-db5c-44d1-93f0-1e71f9cXXXXX"));
parameters.add(new BasicNameValuePair("toAccountId", "fd60e46db0dc119cfea740c337XXXXX"));
parameters.add(new BasicNameValuePair("content", "{\"text_content\":\"这段文字发送自易信SDK示例程序,并且由服务器自动调用发送\",\"desc\":\"不需要描述\",\"type\":\"text\"}")); post.setEntity(new UrlEncodedFormEntity(parameters,"UTF-8")); HttpResponse response=client.execute(post);
System.out.println(EntityUtils.toString(response.getEntity()));
}
}
很简单,简单得我都不愿意多解释
对了,博主的access_token和toAccountId最后三个字母做了修改,否则的话大家都可以利用这两个参数以我的名义向好友发送消息了。
最后成功了以后,在易信客户端可以看到如下的效果:
JAVA调用易信接口向指定好友推送消息(二)POST测试的更多相关文章
- JAVA调用易信接口向指定好友推送消息(一)背景需求
众所周知,中国电信内部一直使用易信群进行交流 各种工作交流都在易信群里面沟通 包括投诉处理,障碍报修,拍照上传 最重要的就是每天甚至每个时点的指标完成情况的通报 所以只能用4个字来形容 String ...
- JAVA多线程(四) Executor并发框架向RabbitMQ推送消息
github代码地址: https://github.com/showkawa/springBoot_2017/tree/master/spb-demo/spb-brian-query-service ...
- SignalR指定用户推送消息
一.首先,在MVC项目中安装SingalR包(SingalR2.0需要.net4.5以上,VS2010可以安装1.1.3版本,本例为VS2010+SignalR1.1.3). 打开工具-NuGet程序 ...
- Java调用第三方http接口的方式
1. 概述 在实际开发过程中,我们经常需要调用对方提供的接口或测试自己写的接口是否合适.很多项目都会封装规定好本身项目的接口规范,所以大多数需要去调用对方提供的接口或第三方接口(短信.天气等). 在J ...
- 发送短信验证码及调用短信接口与C# 后台 post 发送
#region 调用短信接口 public ActionResult Mobile(string Tel)//调用接口 { Random rm = new Random(); int i; strin ...
- Java调用Http/Https接口(6)--RestTemplate调用Http/Https接口
RestTemplate是Spring提供的用于访问Http接口的客户端,提供同步的API:在将来的Spring版本中可能会过时,将逐渐被WebClient替代.文中所使用到的软件版本:Java 1. ...
- Java调用Http/Https接口(5)--HttpAsyncClient调用Http/Https接口
HttpAsyncClient是HttpClient的异步版本,提供异步调用的api.文中所使用到的软件版本:Java 1.8.0_191.HttpClient 4.1.4. 1.服务端 参见Java ...
- Java调用Http/Https接口(4)--HttpClient调用Http/Https接口
HttpClient是Apache HttpComponents项目下的一个组件,是Commons-HttpClient的升级版,两者api调用写法也很类似.文中所使用到的软件版本:Java 1.8. ...
- Java调用Http/Https接口(3)--Commons-HttpClient调用Http/Https接口
Commons-HttpClient原来是Apache Commons项目下的一个组件,现已被HttpComponents项目下的HttpClient组件所取代:作为调用Http接口的一种选择,本文介 ...
随机推荐
- 团队作业week2-软件分析和用户需求调查
我们的团队选择评定的软件是必应词典(iphone版)和使用较多的有道词典(iphone版) 类别 描述 评分(Bing) 评分(有道) 功能 核心功能1:词典 顾名思义,作为一款词典类 ...
- mvc异步表单遇到的问题
1,mvc异步表单遇到的问题 问题:使用jqury easy ui 时提交异步数据不能请求到服务器 解决办法:经过细心调试和检测,发现jqury的加载顺序放在了easy ui之后,所以首先加 ...
- 2124: 等差子序列 - BZOJ
Description 给一个1到N的排列{Ai},询问是否存在1<=p1=3),使得Ap1,Ap2,Ap3,…ApLen是一个等差序列. Input 输入的第一行包含一个整数T,表示组数.下接 ...
- IntelliJ IDEA 15 安装
前言 因为今日14安装一插件崩溃,现安装了15. 版本:ideaIU-15.0.2 安装参考说明书 http://wiki.jikexueyuan.com/project/intellij-idea- ...
- CSS3属性box-shadow使用教程,css3box-shadow
CSS3的box-shadow属性可以让我们轻松实现图层阴影效果.我们来实战详解一下这个属性. 1. box-shadow属性的浏览器兼容性先来看一个这个属性的浏览器兼容性: Opera: 不知道是从 ...
- 01-08-04【Nhibernate (版本3.3.1.4000) 出入江湖】二级缓存:NHibernate自带的HashtableProvider之命名缓存
http://www.cnblogs.com/lyj/archive/2008/11/28/1343418.html 可以在映射文件中定义命名查询,<query>元素提供了很多属性,可以用 ...
- Robot framework+python安装使用图解版
一.安装包 1.Python2.7(一切的基础,切记安装目录不能有中文不能有空格) 1)python2.7:(python环境):python-2.7.msi 2)setuptools(python包 ...
- Perl 三种时间time,localtime,gmttime
#!/usr/bin/perl use warnings; use diagnostics; use strict; use POSIX; print "time: ", time ...
- Android中XML格式数据的简单使用
源码: package com.wangzhu.demo; import java.io.IOException; import java.io.StringWriter; import javax. ...
- 最长不下降子序列//序列dp
最长不下降子序列 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 求最长不下降子序列的长度 输入格式 第一行为n,表示n个数第二行n个数 输出格式 最长不下降 ...