zoukankan      html  css  js  c++  java
  • 微信登陆总结及遇到的问题

      入行IOS开发第一个任务就是做微信登陆。调用微信的SDK接口,遇到一些小细节问题。这里就总结一下吧。

      

      SDK的导入的方式具体可看微信官方文档

      https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=1417694084&token=&lang=zh_CN

      SDK接口具体说明

      https://open.weixin.qq.com/cgi-bin/showdocument?action=doc&id=open1419317851&t=0.9033173893112689#scope

    下面是代码

    第一步:请求CODE

    -(void)sendAuthRequest
    { 
         //我这里使用UUID来做state内容
         self.requestState = [NSUUID UUID].UUIDString;
        
       //构造SendAuthReq结构体 
        SendAuthReq* req =[[[SendAuthReq alloc ] init ] autorelease ];
        req.scope = @"snsapi_userinfo" ;
        req.state = self.requestState ;
        //第三方向微信终端发送一个SendAuthReq消息结构
        [WXApi sendReq:req]; 
    }
    参数说明
    参数是否必须说明
    appid 应用唯一标识,在微信开放平台提交应用审核通过后获得
    scope 应用授权作用域,如获取用户个人信息则填写snsapi_userinfo(什么是授权域?
    state 用于保持请求和回调的状态,授权请求后原样带回给第三方。该参数可用于防止csrf攻击(跨站请求伪造攻击),建议第三方带上该参数,可设置为简单的随机数加session进行校验
    第二步:通过code获取access_token

    获取第一步的code后,请求以下链接获取access_token:

    https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

    参数说明
    参数是否必须说明
    appid 应用唯一标识,在微信开放平台提交应用审核通过后获得
    secret 应用密钥AppSecret,在微信开放平台提交应用审核通过后获得
    code 填写第一步获取的code参数
    grant_type 填authorization_code
    第三步:通过access_token调用接口

    获取access_token后,进行接口调用,有以下前提:

    1. 1. access_token有效且未超时;

    2. 2. 微信用户已授权给第三方应用帐号相应接口作用域(scope)

  • 相关阅读:
    低代码:时代的选择
    AI+云原生,把卫星遥感虐的死去活来
    网络货运平台要智能,安全的数据底座少不了
    基于昇腾CANN的卡通图像生成可在线体验啦!十分钟带你了解CANN应用开发全流程
    什么是强化学习?
    高可用架构演进之单元化
    AOC萌新探索:搭建和体验在线AOC环境
    如何将知识引入机器学习模型提升泛化能力?
    零代码以“王者荣耀”为例解析设计七原则
    从零开始搭建前端脚手架
  • 原文地址:https://www.cnblogs.com/YaoHearthStone/p/4825738.html
Copyright © 2011-2022 走看看