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

免费的tickle网站logo设计报价明细表

免费的tickle网站,logo设计报价明细表,资深的家居行业网站开发,龙岩网站建设大概费用“大家好#xff0c;我是雄雄#xff0c;欢迎关注微信公众号#xff1a;雄雄的小课堂”前言现在是#xff1a;2022年4月19日19:56:56昨天写了个bladex的单点登录#xff0c;回想起来还是比较复杂的#xff0c;今天又收到了个在若依里面实现单点登录。具体是这样的:别的系… “大家好我是雄雄欢迎关注微信公众号雄雄的小课堂”前言现在是2022年4月19日19:56:56昨天写了个bladex的单点登录回想起来还是比较复杂的今天又收到了个在若依里面实现单点登录。具体是这样的:别的系统中访问我们的系统但是用户已经在那边系统登录过了跳转到这边无需在来一次登录直接上本系统中继续后续的操作。实现思路三方系统也就是需要跳转我们系统的系统直接请求我们系统的登录页面挂着token参数。在我们系统登录界面判断请求链接中有没有token,没有则正常走登录流程。如果没有token则重新写一个单点登录的接口去请求。在后台将拿到的token去三方系统中鉴权通过则继续登录没有通过则直接返回到登录页面。实现代码前端1.在login的vue页面中的created方法中调用单点登录的方法。created() {//平台单独的登录  2022年4月19日11:23:58this.getLoginByNameAndTokenJ();},2.在methods中写函数的实现/*** 三方平台单点登陆系统 2022年4月19日11:22:33* 只传递token*/getLoginByNameAndTokenJ(){//获取地址栏中的tokenvar token  this.$route.query.token;//调用登录的接口if(token||tokenundefined||tokennull){//不是那边系统过来的不走这个地方阻止created的方法继续向下走}else{//转圈圈不要看到登陆页面无感体验this.loading  true;var logininfo {token:token};//执行另一套登录操作//不是本系统的用户,去J平台登陆去this.$store.dispatch(LoginJHaveToken, logininfo).then(()  {this.$message.success(登录成功);this.loading  false;//判断当前角色getInfo().then((res)  {//获取角色名称var rolesName  res.roles[0];//获取所属场馆this.deptInfo  res.dept;sessionStorage.setItem(ssUserName, res.user.nickName);//如果是场馆管理员if (rolesName  changguanmanager) {this.$router.push({path: /VenueKanban,query: {changguan: res, aa: 0},replace: true}).catch(()  {});//否则就是其他用户} else {this.$router.push({path: this.redirect || /}).catch(()  {});}});}).catch(err {console.log(有异常信息,err);//异常信息this.loading  false;if (this.captchaOnOff) {this.getCode();}});}},3.在user.js中实现LoginJHaveToken方法//平台带着token登录不需要输入账号密码//密码都是123456//还需要带着token验证一下LoginJHaveToken({ commit }, userInfo) {const token  userInfo.tokenconst queryParams {token:token};return new Promise((resolve, reject)  {getLoginByJHaveToken(queryParams).then(res  {setToken(res.token)commit(SET_TOKEN, res.token)resolve()}).catch(error  {reject(error)})})},4.在login.js中实现getLoginByJHaveToken方法/*** 平台带着tonken进行登录** param queryParam* returns {*}*/export function getLoginByJHaveToken(queryParam) {return request({url: /ToThirdPart/toThirdPartGetAuthJHaveToken,method: post,params: queryParam})}后端1.在/ToThirdPart/toThirdPartGetAuthJHaveToken控制器中实现登录的操作/*** Description: 平台带着token来系统里面登陆* 这边需要做两个步骤* 1.检测数据库里面有没有这个用户名有则不操作无则添加* 2.去平台验证一下Token是否有有的话继续操作后面的登录* 平台没有这个token则直接打回去不让上来* author: 穆雄雄* date: 2022/4/19 上午 11:38* Return: com.ruoyi.common.core.domain.AjaxResult*/PostMapping(/toThirdPartGetAuthJHaveToken)ApiOperation(value  平台带着token过来登录)public AjaxResult toThirdPartGetAuthJHaveToken(String token) {//调用验证token的方法JSONObject jsonObject  checkJToken(token);String code  jsonObject.getString(code);Integer level  0;String loginName  ;Long organId  null;//返回结果AjaxResult ajax  null;if (code.equals(0)) {//验证成功JSONObject dataObject  jsonObject.getJSONObject(data);//拿到其他的信息level  dataObject.getInteger(level);loginName  dataObject.getString(name);organId  dataObject.getLong(organId);} else {ajax  AjaxResult.error(jsonObject.getString(msg));return ajax;}String isUserNameHas  ;//检测一下用户名存在不存在if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(loginName))) {isUserNameHas  用户已存在不需要执行添加的操作;} else {//用户不存在时将用户添加到数据库中SysUser sysUser  new SysUser();//登录名sysUser.setUserName(loginName);//昵称sysUser.setNickName(loginName);//密码统一都是123456sysUser.setPassword(SecurityUtils.encryptPassword(123456));//创建者标识J平台过来的用户sysUser.setCreateBy(j_have_token);//创建日期sysUser.setCreateTime(new Date());//所属等级sysUser.setHierarchy(level);//明文sysUser.setMingwen(123456);//账户权限为了区分是平台的用户还是本系统用户//id返回来之后需要加上sysUser.setDeptId(organId);//所属等级如果没有则角色是全国的//1  省  2 市     3  区if (level  null) {//角色Long[] roleids  {104L};sysUser.setRoleIds(roleids);} else {Long[] roleids  {100L};sysUser.setRoleIds(roleids);}int rows  userService.insertUser(sysUser);if (rows  0) {isUserNameHas  添加成功;}}ajax  AjaxResult.success();// 生成令牌(不加验证码登录)String tokenNew  loginService.loginNoCode(loginName, 123456, null);ajax.put(Constants.TOKEN, tokenNew);ajax.put(isUserNameHas, isUserNameHas);ajax.put(msg, 登录成功);return ajax;}2.鉴权方法checkJToken验证token是否存在存在则返回用户信息不存在则打回去/*** 检测一下J平台的token 对不对** param token* return*/public JSONObject checkJToken(String token) {JSONObject jsonObject  new JSONObject();//测试环境String baseUrl  http://xxxxx/checkTokenRtnInfo?stk  token;HttpResponse d  HttpRequest.get(baseUrl).header(HttpHeaders.CONTENT_TYPE, application/json).header(HttpHeaders.ACCEPT, application/json).execute();return (JSONObject) JSONObject.parse(d.body().toString());}3.绕过验证码登录的方法重写loginService.loginNoCode方法/*** 不加验证码登录** param username 用户名* param password 密码* param uuid 唯一标识* return 结果*/public String loginNoCode(String username, String password,  String uuid){// 用户验证Authentication authentication  null;try{// 该方法会去调用UserDetailsServiceImpl.loadUserByUsernameauthentication  authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(username, password));}catch (Exception e){if (e instanceof BadCredentialsException){AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message(user.password.not.match)));throw new UserPasswordNotMatchException();}else{AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, e.getMessage()));throw new ServiceException(e.getMessage());}}AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message(user.login.success)));LoginUser loginUser  (LoginUser) authentication.getPrincipal();recordLoginInfo(loginUser.getUserId());// 生成tokenreturn tokenService.createToken(loginUser);}最后就可以了可能这种方式不是最好的但是目前仅想到这种方法。注意事项因为若依的登录方法是带着验证码的如果不带则会提示验证码失效目前登录传参的方式是post相对比较安全点。三方系统请求的时候参数是在链接中挂着不是很靠谱。
http://wiki.neutronadmin.com/news/114585/

相关文章:

  • 高质量网站外链平台捕鱼网站开发
  • 湖南中虹羽建设工程有限公司网站asp网站301
  • 站内搜索工具网页qq登录网址
  • 深圳网站建设现网站建设岗位将来有什么发展
  • 优化网站及商品排名怎么做宣城哪里做网站
  • 韩国网站如何切换中文郑州seo哪家好
  • 北海网站建设公司网站横幅怎么做
  • 江西省城乡建设厅网站广州专业的网站开发公司
  • 襄阳城乡建设局网站首页免费网站正能量app应用大全
  • 手机网站建设推广自己做的博客网站吗
  • 招商网站建设的必要性什么网站专门做自由行的
  • 钓鱼网站制作视频教程最近时政新闻10条
  • 扁平式网站淘宝网页版电脑版登录淘宝网
  • 网站域名空间管理东莞招聘网有哪些比较好
  • 网站建设公司哪家好 在线磐石网络nas服务器可以做网站吗
  • 徐州云建站模板织梦模板可以在wordpress用
  • 如何投诉做网站的公司建设部网站上查不到资质的企业
  • 外贸网站仿牌主机怎么找wordpress模板代码
  • 网站做权重的好处昆明响应式网站制作
  • 常州做网上废品收购网站做网站数据存在哪里
  • 一流的盐城网站建设室内设计师可以自学吗
  • 私人网站建设成本python在线观看
  • 国外做做网站怎么做网站dns加速
  • 兰州网站建设企业名录前端开发工具哪个好
  • 网站建设 创业网站建设投标书范本
  • 旅游网站开发系统分析app开发的价值
  • 手机登录网站后台网络营销托管服务商指的是
  • 怎样在工商局网站做公示深圳网络设计公司
  • 哪个网站可以做自己的网页刷粉网站推广快点
  • 图书管理系统网站开发个人律师网站模板