欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

程序员文章站 2023-12-23 00:02:22
...

第一部分——环境的搭建,开发接入与URL有效性验证

一、发环境的搭建

最近貌似Sunny-Ngrok无能正常使用,由于时间关系就转另外一个内网穿透,本次并没有使用ngrok转向使用frp

Frp比ngrok更加方便,由于本人使用的是Linux系统,本次开发环境的搭建就以Linux为主,Windows应该类似。

1、客户端下载

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

选择相对应的版本进行下载

本人使用的是Linux 64位版本

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

注意:386是32位的版本

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

客户端只用下载frpc和frpc.ini,其中后者是配置文件

2、客户端的配置(frpc.ini)

Linux客户端的配置

Linux下使用命令修改配置文件:

vim frpc.ini  

配置文件内容如下:

1.	[common]  
2.	server_addr = frp2.chuantou.org  
3.	server_port = 7000  
4.	privilege_token = www.xxorg.com  
5.	protocol = kcp  
6.	user = worldyao  
7.	  
8.	[xxorg]  
9.	type = http  
10.	local_ip = 127.0.0.1  
11.	local_port = 8080  
12.	subdomain = worldyao  
13.	  
14.	[tcp3389]  
15.	type = tcp  
16.	local_ip = 127.0.0.1  
17.	local_port = 3389  
18.	remote_port = 53389  

其中修改的部分是:

user这里随便填写

user = worldyao  

这里是端口号,此处我用的是Tomcat的默认端口号8080,该个配置文件的默认端口号是80

local_port = 8080  

这个是前缀,设置这个之后你的访问地址将是:http://worldyao.frp2.chuantou.org

subdomain = worldyao  

Windows客户端的配置

frpc.ini的参数设置同Linux一样仅仅是启动方式不一样

3、启动服务

Linux下使用命令:

sudo ./frpc -c ./frpc.ini  

Windows下控制台

cmd命令

frpc.exe -c frpc.ini  

PowerShell命令

 .\frpc.exe -c frpc.ini  

二、开发的接入和验证URL的有效性

粉丝服务平台开发模式接入流程

第一步:申请消息接口

第二步:验证URL有效性

第三步:获取AccessToken

 

第一步:申请消息接口

在微博开放平台中新建粉丝服务应用

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

创建应用完成后-->找到该应用-->完善应用(可以不用审核)

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

可以看到粉丝服务平台的

App Key和App Secret,记录这两个参数

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

第二步:验证URL有效性

在开发者首次使用事件推送服务时,需要先通过一次校验来和微博服务器建立首次连接,具体来说:
开发者提交信息后,微博消息服务器将发送GET请求到填写的URL上,GET请求携带四个参数:

校验参数字段

字段类型

字段说明

signature

string

微博加密签名,signature结合了开发者的appsecret、和请求中的timestamp参数,nonce参数

timestamp

string

时间戳

nonce

string

随机数

echostr

string

随机字符串

开发者收到请求后,首先通过加密后的signature参数来校验GET请求的真实性,如果确认此次GET请求来自微博服务器,原样返回echostr参数内容就可以成功建立首次连接,否则连接失败。

1、打开eclipse,新建一个名为WeiBoWeb项目,新建一个cn.json.weibopackage,在该包下新建一个名为WeiBojava文件。具体代码如下:

WeiBo.java

package cn.json.weibo;

public class WeiBo extends HttpServlet{
	private static final long serialVersionUID = 1L;
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
	    String signature = request.getParameter("signature");	// 微信加密签名 
	    String timestamp = request.getParameter("timestamp");	// 时间戳 
	    String nonce = request.getParameter("nonce");			// 随机数  
            String echostr = request.getParameter("echostr");		// 随机字符串
            PrintWriter out = response.getWriter();
            // 通过检验signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败
            if (Check.checkSignature(signature, timestamp, nonce)) {
        	out.print(echostr);
            }
            out.close();
	}
	/** 
	 * 处理微博服务器发来的消息 
         */ 
	public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
	}
}  

、配置Servlet(修改web.xml)

web.xml文件加入以下代码

  <servlet>
  	<servlet-name>WeiBo</servlet-name>
  	<servlet-class>cn.json.weibo.WeiBo</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>WeiBo</servlet-name>
  	<url-pattern>/WeiBo</url-pattern>	
  </servlet-mapping>

、项目树图

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

、部署运行,发布

、服务器的配置

URL填写:服务器地址+项目名称+调用的Servlet

AppKey:从粉丝服务平台应用获取的AppKey

Java开发微博粉丝服务(1)——环境的搭建,开发接入与URL有效性验证

 

 


上一篇:

下一篇: