「javasdk用法」javasdk下载
今天给各位分享javasdk用法的知识,其中也会对javasdk下载进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
如何用java开发一个sdk
如何用java开发一个sdk可以在千锋教育进行专业的学习,千锋教育是国内java开发教学的领导者,实力雄厚,放心可靠。
java开发一个sdk具体流程:
1、在Java工程中添加该SDK中dist目录下的jar库,并添加到你的编译路径中。
2、在代码中import相应的包名。
3、非web应用请修改和查阅***.java,web应用请修改config.jsp,查阅index.jsp, 获得包括oauth登录请求及其它功能请求的方法接口。
4、commons包里面的java类实现了目前腾讯微博开发平台的所有接口,除第一个参数是oauth对象外其他都和开发平台的api文档一致,类名和方法名亦和api一致:比如获取主页时间线的api是:那么此SDK的java类是:Statuses_***.java,实现方法是home_timeline(a,b,c,d...)。
5、此SDK为半原创,思路和部分方法函数参考了官方(热心网友sampan)提供的java SDK() 和网上相关的Oauth授权资料。
6、javawind-qweibo-api-1.0.jar为本sdk生成的jar,如果有修改源码,记得重新生成此jar。
想要了解更多java开发的相关信息,推荐咨询千锋教育。千锋励精图治,不改教育初心。十一年来,千锋以政策为引导,不断完善国内特色现代职业教育体系建设,充分发挥教研师资队伍使命,构建品质教育,加大创新型人才培养力度,为经济发展提供智力人才和智力支撑,成为新时期职业教育发展的新方向,在同行业中有很高的美誉度。
qq 第三方登录 java sdk怎么用
方法/步骤
准备工作
在正式接入之前你需要了解以下名词的含义:
1. appid :应用的唯一标识。在OAuth2.0认证过程中,appid的值即为oauth_consumer_key的值。
2. appkey:appid对应的密钥,访问用户资源时用来验证应用的合法性。在OAuth2.0认证过程中,appkey的值即为oauth_consumer_secret的值。
3. redirecturl:成功授权后的回调地址,必须是注册appid时填写的主域名下的地址,建议设置为网站首页或网站的用户中心。注意需要将url进行URLEncode。
4. access token:用来判断用户在本网站上的登录状态,具有3个月有效期,用户再次登录时自动刷新。
5. openid:是此网站上唯一对应用户身份的标识,网站可将此ID进行存储便于用户下次登录时辨识其身份,或将其与用户在网站上的原有帐号进行绑定。
第一步
要接入QQ登录,必不可少的是appid和appkey,通过申请接入QQ登录,按照相应步骤操作即可轻松获得,在此不做赘述。
第二步
在需要放置QQ登录按钮的页面加入下面SCRIPT代码:
script type="text/javascript" src="" data-appid="APPID" data-redirecturi="REDIRECTURI" charset="utf-8"/script
PS:APPID 和 REDIRECTURI 换成第一步申请所得到的对应内容,REDIRECTURI 就是登录之后返回的回调地址,在申请页面自己填写,一般写网站主域名即可。注意:回调地址必须以http或https开头。
第三步
在页面放置一个元素节点用来展现登录按钮,并且指定其ID,如:
div id="qq"/div
然后在页面加入如下SCRIPT:
script type="text/javascript"
QC.Login({
btnId:"qq" //插入按钮的节点id
});
/script
这时就可以在页面看到如下效果:
如对这个展示效果不满意,也可以自定义登录按钮。
第四步
在 REDIRECTURI 即回调地址页面加入如下SCRIPT:
script type="text/javascript"
src="" charset="utf-8" data-callback="true"/script
另外:官方说法如果回调地址页与加入QQ登录按钮是同一个页面,则只需要引用一次脚本文件。如果理解不了这种官方说法,可以在第一步的脚本中加入data-callback="true"属性,而忽略第四步,前提是回调地址页与加入QQ登录按钮的页面是同一个页面。
第五步
因为JS SDK封装了获取Access Token以及OpenID的方法,因此开发者不需要用开发代码进行获取,直接调用QQ登录OpenAPI即可。
调用OpenAPI时,请统一遵循下述调用方式:
QC.api(api, paras, fmt, method)
参数说明:
最后
提供一种代码接入思路,仅供参考:
QC.api("get_user_info", {}) //get_user_info是API参数
//指定接口访问成功的接收函数,s为成功返回Response对象
.success(function (s) {
//成功回调,通过s.data获取OpenAPI的返回数据
nick = s.data.nickname; //获得昵称
headurl = s.data.figureurl_qq_1; //获得头像
if (QC.Login.check()) {//判断是否登录
QC.Login.getMe(function (openId, accessToken) { //这里可以得到openId和accessToken
//下面可以调用自己的保存方法
……
});
}
})
//指定接口访问失败的接收函数,f为失败返回Response对象
.error(function (f) {
//失败回调
alert("获取用户信息失败!");
});
////指定接口完成请求后的接收函数,c为完成请求返回Response对象
//.complete(function (c) {
// //完成请求回调
// alert("获取用户信息完成!");
//});
如何使用微信sdk java版
1.首先我们新建一个Java开发包WeiXinSDK
2.包路径:com.ansitech.weixin.sdk
测试的前提条件:
假如我的公众账号微信号为:vzhanqun
我的服务器地址为:
下面我们需要新建一个URL的请求地址
我们新建一个Servlet来验证URL的真实性,具体接口参考
接入指南
3.新建com.ansitech.weixin.sdk.WeixinUrlFilter.java
这里我们主要是获取微信服务器法师的验证信息,具体验证代码如下
[java] view plain copy print?
package com.ansitech.weixin.sdk;
import com.ansitech.weixin.sdk.util.SHA1;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class WeixinUrlFilter implements Filter {
//这个Token是给微信开发者接入时填的
//可以是任意英文字母或数字,长度为3-32字符
private static String Token = "vzhanqun1234567890";
@Override
public void init(FilterConfig config) throws ServletException {
System.out.println("WeixinUrlFilter启动成功!");
}
@Override
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
//微信服务器将发送GET请求到填写的URL上,这里需要判定是否为GET请求
boolean isGet = request.getMethod().toLowerCase().equals("get");
System.out.println("获得微信请求:" + request.getMethod() + " 方式");
if (isGet) {
//验证URL真实性
String signature = request.getParameter("signature");// 微信加密签名
String timestamp = request.getParameter("timestamp");// 时间戳
String nonce = request.getParameter("nonce");// 随机数
String echostr = request.getParameter("echostr");//随机字符串
ListString params = new ArrayListString();
params.add(Token);
params.add(timestamp);
params.add(nonce);
//1. 将token、timestamp、nonce三个参数进行字典序排序
Collections.sort(params, new ComparatorString() {
@Override
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
});
//2. 将三个参数字符串拼接成一个字符串进行sha1加密
String temp = SHA1.encode(params.get(0) + params.get(1) + params.get(2));
if (temp.equals(signature)) {
response.getWriter().write(echostr);
}
} else {
//处理接收消息
}
}
@Override
public void destroy() {
}
}
好了,不过这里有个SHA1算法,我这里也把SHA1算法的源码给贴出来吧!
4.新建com.ansitech.weixin.sdk.util.SHA1.java
[java] view plain copy print?
/*
* 微信公众平台(JAVA) SDK
*
* Copyright (c) 2014, Ansitech Network Technology Co.,Ltd All rights reserved.
*
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.ansitech.weixin.sdk.util;
import java.security.MessageDigest;
/**
* pTitle: SHA1算法/p
*
* @author qsyangyangqisheng274@163.com
*/
public final class SHA1 {
private static final char[] HEX_DIGITS = {'0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
/**
* Takes the raw bytes from the digest and formats them correct.
*
* @param bytes the raw bytes from the digest.
* @return the formatted bytes.
*/
private static String getFormattedText(byte[] bytes) {
int len = bytes.length;
StringBuilder buf = new StringBuilder(len * 2);
// 把密文转换成十六进制的字符串形式
for (int j = 0; j len; j++) {
buf.append(HEX_DIGITS[(bytes[j] 4) 0x0f]);
buf.append(HEX_DIGITS[bytes[j] 0x0f]);
}
return buf.toString();
}
public static String encode(String str) {
if (str == null) {
return null;
}
try {
MessageDigest messageDigest = MessageDigest.getInstance("SHA1");
messageDigest.update(str.getBytes());
return getFormattedText(messageDigest.digest());
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
5.把这个Servlet配置到web.xml中
[html] view plain copy print?
filter
description微信消息接入接口/description
filter-nameWeixinUrlFilter/filter-name
filter-classcom.ansitech.weixin.sdk.WeixinUrlFilter/filter-class
/filter
filter-mapping
filter-nameWeixinUrlFilter/filter-name
url-pattern/api/vzhanqun/url-pattern
/filter-mapping
好了,接入的开发代码已经完成。
6.下面就把地址URL和密钥Token填入到微信申请成为开发者模式中吧。
谁知道Java编程SDK怎么用?
你还没有入门,说了你也不是很明白。
首先你需要知道 Java 程序:
开发环境,需要安装一个 JDK,它包括了运行时库(JRE)和编译器调试器等工具。
如何写一个 .java 文件(扩展名为 java,前面是类名)。
如何通过 javac.exe 来编译这个文件,如果用到了第3方类库怎么添加 -classpath 参数。
如何通过 java.exe 来运行这个程序,如果用到第3方类库怎么添加 -classpath 参数。
如何你的源代码中有 hard-code 的汉字当字符串常量,如果在编译中 -encoding $字符集。
前面是最基础的,如果没弄明白,后面不必说其它的。
关于javasdk用法和javasdk下载的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-01,除非注明,否则均为
原创文章,转载请注明出处。