• 项目1


    Q1、此项目的整个流程?

      卖家扫码登录:(基于微信开放平台开台);

      1、卖家扫码发起微信授权登录请求,微信重定向至第三方网站(定到自己的项目地址,需要注册自己域名,并且备案),同时会附带上code参数(换取access_token的票据)

      2、code + AppID【?】 + AppSecret【?】,通过API换取access_token (包含有openid,一个账号在一个AppID下有一个openid)

        appID和AppSecrect怎么来的? appID是公众号的唯一标识。

        从哪获取的公众号?用的是微信官方给的测试号,扫码会给你一个appID和appSecret。

      3、通过token进行接口调用,获取用户数据资源,实现用户操作

      

      卖家端的二维码怎么出来的?

      答:

      买家端购买流程?

      1、选择商品,创建订单。

      2、支付,传入的参数为订单id,细节进入数据库查询。

      3、更新库存等操作。

      

    Q2、本项目中,Redis存储的key-value是什么?

      答:redis中的key为token值,key为openid,即用户在卖家端的身份唯一标识。

      唯一标识怎么来的?

      答:卖家在一个平台下有一个appId,同时对应一个openid,此openid即为在该平台下的唯一标识。

      用户没有openid吗?

      答:有。

      浏览器的cookie里有什么?

      答:cookie的name是token,value是token值,同时作为redis的key。

    Q3、微信授权、微信支付和微信退款?

      答:项目是基于微信的,因此首先需要获得微信授权,获得openID。

      怎么获取OpenId?

      答:

    Q4、项目基于token,实现身份验证

       答:token是服务端生成的一串字符串,作为客户端请求的一个令牌。

         第一次登录后,服务器生成token,将此token返回给客户端,存储在cookie中。下次客户端再次访问服务端时,依据此token

         即可免密登录。

       token存放在那?

        答:存放在cookie中 和 内存中,如redis中,可以减小访问时间。

      

    Q0、遇到的问题?怎么解决的?

       答:

    Redis

    1. 项目中使用Redis缓存
    • 引入依赖
    • 项目启动类上添加@Enable注解;
    • 若在某方法中使用(如select查询,则直接查询缓存)缓存,则在方法上添加@Cachable注解,常用字段:cacheNames,value,unless;——注意:注解返回的类型需要实现序列化
    • 更新缓存(比如保存方法,写入,则需要更新缓存)——1、@CachePut注解,cacheNames,value,2、@CacheEvict注解  区别:1删除缓存内容 2则是更新缓存内容,需要和Cacheable注解下的方法的返回值相同
    一回生,二回熟
  • 相关阅读:
    swift textfiled 输入完毕 return 隐藏键盘 方法
    第一篇,仅是为了纪念
    ASP.NET MVC之验证终结者篇
    ASP.NET MVC扩展之HtmlHelper辅助方法
    Java历程-初学篇 Day04选择结构(1)
    Java历程-初学篇 Day03扫描仪与类型转换
    Java历程-初学篇 Day02变量,数据类型和运算符
    Java历程-初学篇 Day01初识java
    简单工厂模式和策略模式理解
    工厂模式和策略模式的区别
  • 原文地址:https://www.cnblogs.com/zzytxl/p/12649800.html
Copyright © 2020-2023  润新知