ssh微信开发号ssh7364是不是骗子

微信网页授权回调地址,怎么和ssh框架结合_百度知道
微信网页授权回调地址,怎么和ssh框架结合
我有更好的答案
通过API换取access_token. 通过code参数加上AppID和AppSecret等;(2),微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数(1). 第三方发起微信授权登录请求
采纳率:84%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。10:05 提问
ssh开发微信公众号java获取微信用户信息代码有误,
这是action代码
package com.tyol.ljtg.index.
import java.io.BufferedR
import java.io.InputS
import java.io.InputStreamR
import java.io.OutputS
import java.net.ConnectE
import java.net.URL;
import java.util.L
import javax.net.ssl.HttpsURLC
import javax.net.ssl.SSLC
import javax.net.ssl.SSLSocketF
import javax.net.ssl.TrustM
import javax.servlet.http.HttpServletR
import net.sf.json.JSONA
import net.sf.json.JSONO
import org.apache.struts2.ServletActionC
import com.opensymphony.xwork2.ActionS
import com.opensymphony.xwork2.ModelD
import com.tyol.ljtg.pojo.SNSUserI
import com.tyol.ljtg.pojo.WeixinOauth2T
import com.tyol.ljtg.products.service.ProductS
import com.tyol.ljtg.products.vo.P
import com.tyol.ljtg.users.service.UserS
import com.tyol.ljtg.users.vo.U
import com.tyol.ljtg.utils.MyX509TrustM
* 首页登录的action
public class IndexAction extends ActionSupport implements ModelDriven&Users&{
private static final long serialVersionUID = 1L;
public void setCode(String code) {
this.code =
public void setState(String state) {
this.state =
private Users users = new Users() ;
public void setUsers(Users users) {
this.users =
//注入UserService
private UserService userS
public void setUserService(UserService userService) {
this.userService = userS
//注入ProductService
private ProductService productS
public void setProductService(ProductService productService) {
this.productService = productS
public String execute(){
//用户同意授权后,能获取到code
// 用户同意授权
if (!"authdeny".equals(code)) {
System.out.println(221);
// 获取网页授权access_token
WeixinOauth2Token weixinOauth2Token = getOauth2AccessToken("wx01fe15e40c010d99", "b781dae5a", code);
// 网页授权接口访问凭证
String accessToken = weixinOauth2Token.getAccessToken();
// 用户标识
String openId = weixinOauth2Token.getOpenId();
// 获取用户信息
SNSUserInfo snsUserInfo = getSNSUserInfo(accessToken, openId);
//设置微信用户信息
users.setUid(snsUserInfo.getOpenId());
users.setUsername(snsUserInfo.getNickname());
users.setAddress(snsUserInfo.getCity());
users.setHeadImgUrl(snsUserInfo.getHeadImgUrl());
//保存用户
userService.addUsers(users);
List&Products& products = productService.findAllProducts();
ServletActionContext.getRequest().getSession().setAttribute("products", products);
ServletActionContext.getRequest().getSession().setAttribute("users", users);
return "indexOne";
users = userService.findByUid("111");
List&Products& products = productService.findAllProducts();
ServletActionContext.getRequest().getSession().setAttribute("products", products);
ServletActionContext.getRequest().getSession().setAttribute("users", users);
return "index";
* 获取网页授权凭证
* @param appId 公众账号的唯一标识
* @param appSecret 公众账号的密钥
* @param code
* @return WeixinAouth2Token
public static WeixinOauth2Token getOauth2AccessToken(String appId, String appSecret, String code) {
WeixinOauth2Token wat =
// 拼接请求地址
String requestUrl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code";
requestUrl = requestUrl.replace("APPID", "wx01fe15e40c010d99");
requestUrl = requestUrl.replace("SECRET", "b781dae5a");
requestUrl = requestUrl.replace("CODE", code);
// 获取网页授权凭证
JSONObject jsonObject = httpsRequest(requestUrl, "GET", null);
if (null != jsonObject) {
wat = new WeixinOauth2Token();
wat.setAccessToken(jsonObject.getString("access_token"));
wat.setExpiresIn(jsonObject.getInt("expires_in"));
wat.setRefreshToken(jsonObject.getString("refresh_token"));
wat.setOpenId(jsonObject.getString("openid"));
wat.setScope(jsonObject.getString("scope"));
} catch (Exception e) {
int errorCode = jsonObject.getInt("errcode");
String errorMsg = jsonObject.getString("errmsg");
System.out.println(111);
* 发送https请求
* @param requestUrl 请求地址
* @param requestMethod 请求方式(GET、POST)
* @param outputStr 提交的数据
* @return JSONObject(通过JSONObject.get(key)的方式获取json对象的属性值)
public static JSONObject httpsRequest(String requestUrl, String requestMethod, String outputStr) {
JSONObject jsonObject =
// 创建SSLContext对象,并使用我们指定的信任管理器初始化
TrustManager[] tm = { new MyX509TrustManager() };
SSLContext sslContext = SSLContext.getInstance("SSL", "SunJSSE");
sslContext.init(null, tm, new java.security.SecureRandom());
// 从上述SSLContext对象中得到SSLSocketFactory对象
SSLSocketFactory ssf = sslContext.getSocketFactory();
URL url = new URL(requestUrl);
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setSSLSocketFactory(ssf);
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
// 设置请求方式(GET/POST)
conn.setRequestMethod(requestMethod);
// 当outputStr不为null时向输出流写数据
if (null != outputStr) {
OutputStream outputStream = conn.getOutputStream();
// 注意编码格式
outputStream.write(outputStr.getBytes("UTF-8"));
outputStream.close();
// 从输入流读取返回内容
InputStream inputStream = conn.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "utf-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String str =
StringBuffer buffer = new StringBuffer();
while ((str = bufferedReader.readLine()) != null) {
buffer.append(str);
// 释放资源
bufferedReader.close();
inputStreamReader.close();
inputStream.close();
inputStream =
conn.disconnect();
jsonObject = JSONObject.fromObject(buffer.toString());
} catch (ConnectException ce) {
ce.addSuppressed(ce);
} catch (Exception e) {
e.addSuppressed(e);
return jsonO
* 通过网页授权获取用户信息
* @param accessToken 网页授权接口调用凭证
* @param openId 用户标识
* @return SNSUserInfo
@SuppressWarnings( { "deprecation", "unchecked" })
public static SNSUserInfo getSNSUserInfo(String accessToken, String openId) {
SNSUserInfo snsUserInfo =
// 拼接请求地址
String requestUrl = "https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID";
requestUrl = requestUrl.replace("ACCESS_TOKEN", accessToken).replace("OPENID", "wx01fe15e40c010d99");
// 通过网页授权获取用户信息
JSONObject jsonObject = httpsRequest(requestUrl, "GET", null);
if (null != jsonObject) {
snsUserInfo = new SNSUserInfo();
// 用户的标识
snsUserInfo.setOpenId(jsonObject.getString("openid"));
snsUserInfo.setNickname(jsonObject.getString("nickname"));
// 性别(1是男性,2是女性,0是未知)
snsUserInfo.setSex(jsonObject.getInt("sex"));
// 用户所在国家
snsUserInfo.setCountry(jsonObject.getString("country"));
// 用户所在省份
snsUserInfo.setProvince(jsonObject.getString("province"));
// 用户所在城市
snsUserInfo.setCity(jsonObject.getString("city"));
// 用户头像
snsUserInfo.setHeadImgUrl(jsonObject.getString("headimgurl"));
// 用户特权信息
snsUserInfo.setPrivilegeList(JSONArray.toList(jsonObject.getJSONArray("privilege"), List.class));
} catch (Exception e) {
snsUserInfo =
int errorCode = jsonObject.getInt("errcode");
String errorMsg = jsonObject.getString("errmsg");
System.out.println(111);
return snsUserI
public Users getModel() {
// TODO Auto-generated method stub
按赞数排序
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!
你应该把你报我错贴出来
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐一个微信女的才聊两天要约我见面,是不是很可能是骗子_百度知道
一个微信女的才聊两天要约我见面,是不是很可能是骗子
我有更好的答案
有可能是饭托酒托什么的,自己小心
采纳率:23%
你只要不给她钱,她能骗你什么
我不知道啊
那你就去见面
她在好心好意的骗你。
........你是男的?那我请问你有什么好骗的呢?你有很多钱么?就算有,你不给人家能把你怎么办,我看你是想约炮又没胆子去吧
其他6条回答
为您推荐:
其他类似问题
要约的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。怎么把项目做到微信上面去,比如我做了个ssh项目 不知道怎么弄到手机上面去看_百度知道
怎么把项目做到微信上面去,比如我做了个ssh项目 不知道怎么弄到手机上面去看
我有更好的答案
需要开发微信订阅号才行,微信订阅号可以引用ssh项目页面
用火狐浏览器,可以生成二维码,(地址栏后边有一个小图标)用微信扫一扫。就可以在微信上查看了
本回答被网友采纳
为您推荐:
其他类似问题
ssh的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 微信注册账号申请 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信