当前位置: 首页 > news >正文

整套网站设计免费推广产品的平台

整套网站设计,免费推广产品的平台,开网页卡,濮阳网站建设陈帅1.nuxt服务端渲染技术SSR Server Side Render(ajax异步请求,SEO是靠爬虫抓取数据的,没有抓到数据排名靠后) 1.在用户端搭建(利于SEO) 1.解压后 npm install npm run dev 2.default.vue有 头内容和尾,创建头尾文件,然后加入到组件 3.每个前端系统对应一个单独的后台接口(太方便了…

1.nuxt服务端渲染技术SSR Server Side Render(ajax异步请求,SEO是靠爬虫抓取数据的,没有抓到数据排名靠后)

1.在用户端搭建(利于SEO) 1.解压后 npm install npm run dev
2.default.vue有 头内容和尾,创建头尾文件,然后加入到组件
3.每个前端系统对应一个单独的后台接口(太方便了,你终于不用写route文件,写繁杂的路由信息了)

2.nuxt路由(固定路由和动态路由[添加变化的数据])

 window.location.href='/hosp';//会跳转到 /hosp/index.vue文件//在host文件夹下创建,动态路由文件夹规范  _开头 如  _hoscode.vue//会自动找到变量名对应的名字window.location.href='/hosp'+hoscode;

3.登录(手机号登录+验证码/微信登录)

 1.网关判断登录状态(后面直接提取到User模块通过GlobalFilter判断全局状态,就不必每次请求都需要登录信息)2.加网关路径3.判断第一次登录

4.jwt工具生成(token放请求头,方便前端判断) 头信息(加密算法)+用户信息(自己传入)+签名信息(秘钥) 然后base64加密 放非隐私信息

   //token过期时间和秘钥1.过程:  登录时生成token,然后与redis存的token对比

//下面的工具类可以根据需要得到对应的值

public class JwtHelper {//过期时间24小时内过期private static long tokenExpiration = 24*60*60*1000;//签名秘钥private static String tokenSignKey = "123456";//根据参数生成tokenpublic static String createToken(Long userId, String userName) {String token = Jwts.builder().setSubject("USER").setExpiration(new Date(System.currentTimeMillis() + tokenExpiration))//设置过期.claim("userId", userId).claim("userName", userName).signWith(SignatureAlgorithm.HS512, tokenSignKey)//加密算法.compressWith(CompressionCodecs.GZIP) //压缩.compact();return token;}//根据token字符串得到用户idpublic static Long getUserId(String token) {if(StringUtils.isEmpty(token)) return null;Jws<Claims> claimsJws = Jwts.parser().setSigningKey(tokenSignKey).parseClaimsJws(token);Claims claims = claimsJws.getBody();Integer userId = (Integer)claims.get("userId");return userId.longValue();}//根据token字符串得到用户名称public static String getUserName(String token) {if(StringUtils.isEmpty(token)) return "";Jws<Claims> claimsJws = Jwts.parser().setSigningKey(tokenSignKey).parseClaimsJws(token);Claims claims = claimsJws.getBody();return (String)claims.get("userName");}public static void main(String[] args) {String token = JwtHelper.createToken(1L, "lucy");System.out.println(token);System.out.println(JwtHelper.getUserId(token));System.out.println(JwtHelper.getUserName(token));}
}

5.手机登录

  1. 阿里云短信访问申请签名,模板得到accesskey(点头像)
  2. 引入依赖
<dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId>
</dependency>
  1. 创建短信发送模块,需要在启动类exclude datasource,因为不使用数据库连接
  2. 写工具类,读取sms的配置信息创建bean对象
  3. redisTemplate.opsForValue.get(phone)//得到手机号对应的验证码map .set(phone,code,TimeUnit.MINUTES)
  4. 前端(放cookie)直接调用sms模块,往redis存,登录模块判断redis

6.前端vue需要npm装js-cookie才能使用cookie,点击可以直接改值
//!!!head.Vue引入Vue,可以调用全局登录事件,其他页面可以调用

7.用户认证放到网关
在gateway创建类实现GlobalFilter,Ordered

8.OAuth2解决开放系统间授权问题和单点登录(登录一个模块,其他模块不用登录)(就是CA[第三方公司]给我发token,我可以登录其他公司的账户操作)

  1. 为什么? 用户密码复制(用户密码给我去访问其他系统)不安全
  2. 通用开发者key,开发者和合作者共同开放一个同一的key去访问(我的公司去和百度合作)通常不合适
  3. 颁发令牌(百度颁发令牌给我,临时可以使用,需要token)

9.微信扫码登录(理清思路)

  1. 前端生成二维码,在页面调用微信地址加上配置信息(从服务器获得)
  2. 前端扫码二维码,设置回调地址,微信会返回页面(因为无法调用到本地页面,controller写相同的本地回调页面地址可以解决)
  3. 微信返回code给后端,加上秘钥去请求得到临时token,用httpclient(模拟浏览器请求,需要引入依赖)请求微信数据
 使用StringBuffer.append("?aa=%s");//占位符 String.format(sb.toString,"name");
  1. 得到微信用户信息,openid不为空给openid,为空就需要后期绑定手机号
http://www.shuangfujiaoyu.com/news/58420.html

相关文章:

  • 扬州市城乡建设局招标网站东莞网站优化
  • 网站制作动态转静态怎么做北京疫情最新情况
  • 武汉 网站制作案例全网搜索指数
  • 开展农业信息网站建设工作总结新媒体运营培训
  • 网站上怎么做弹幕效果图整合营销包括哪些内容
  • 山西省建设局官方网站现在什么app引流效果好
  • 做简单网站用什么软件有哪些内容百度首页排名优化哪家专业
  • 交易网站开发建立网站一般要多少钱
  • 企业网站建设市场报价搜索指数分析
  • 家居企业网站建设行情app注册推广
  • 山东网站建设公司推荐关键词挖掘工具
  • 北京网站关键词优化公seo经典案例分析
  • 正规的合肥网站建设百度官网app下载
  • wordpress登录网站文大侠seo
  • 明星网站策划书友链交换平台源码
  • 福州做网站设计长沙seo智优营家
  • 自动做任务赚钱的网站百度免费发布信息
  • 国外做的好的网站常德网站seo
  • 调用wordpress分类名称仓山区seo引擎优化软件
  • 网站如何做线下的市场推广营销案例100例小故事及感悟
  • 网站卖给别人后做违法信息社交媒体营销三种方式
  • 公司的做网站下载谷歌浏览器
  • 加强公司网站建设及数据库的通知简述seo的优化流程
  • 网站建设资料填写seo外包公司优化
  • 外贸网站建设内容包括哪些百度首页广告
  • 网购网站开发项目网站站点
  • 企业做网站的痛点有哪些seo基础教程使用
  • 带会员注册企业网站源码中国教师教育培训网
  • 企业网站做备案厦门网站关键词推广
  • 怎样给网站做图标优化网络推广外包