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接口的一种选择,本文介 ...
随机推荐
- Learn know more about big data
As we all know,we are in a big data age now."Every sword has two slides",as a ITer,we shou ...
- Module模式 - 深入了解Javascript
/* Modelu模式 优点:效率高,代码少,加载速度快,松耦合允许并行加载,提升下载速度 缺点:初始化时间久一点 */ //一.基础用法 var calculate = function (eq) ...
- HDU 4101 Ali and Baba
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4101 一看之下以为是博弈,后来分析才知道只是搜索题. 首先,我们需要从值为-1的位置由内向外搜索一次, ...
- 剑指offer--面试题8
题目:求旋转数组中的最小数字 以下为自己所写代码: #include "stdafx.h" #include <iostream> #include <excep ...
- Codeforces Round #362 (Div. 2)->B. Barnicle
B. Barnicle time limit per test 1 second memory limit per test 256 megabytes input standard input ou ...
- Unity3D 相关项目代码
一.Application.PresistentDataPath 注意最后面是没有/的 public static string PresistentDataPathForEditor = " ...
- Android串口通信(基于Tiny6410平台)
友善之臂的Android系统有他们自己编写的一个串口通信程序,网上没有找到他的源代码,而且界面操作不在一个界面,不是很方便,这里我自己写了一个粗糙点的串口通信程序. 同样这里还是调用友善之臂的frie ...
- Relevance Between Variable Declaration and Definition in C++
A declaration makes a name known to a programm. A definition creates the assocatied entity. A variab ...
- 系统学习sqlserver2012 一
一:使用管理服务器和脚本 在试图菜单中选族已注册的服务器,可以直接切换登录服务器 在试图菜单中选择解决方案资源管理器,可以直接打开之前保存的脚本,方便管理和执行 这两种保存时,都可以分组保存,见下图
- java生成二维码的三个工具
1. 使用SwetakeQRCode在Java项目中生成二维码 http://swetake.com/qr/ 下载地址 或着http://sourceforge.jp/projects/qrcode ...