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

建网站要定制还是第三方系统发软文提高网站权重

建网站要定制还是第三方系统,发软文提高网站权重,百度指数在线查询前100,有赞短网址生成项目场景#xff1a; 前端使用vue3ts 后端使用nestjs 1.申请appId,appKey 1.进入qq互联官网。创建应用 特别注意 1.在填写网站回调域时,需要你线上真实能访问的。不然审核不通过。我的回调地址是前端路由地址 2.如果你想本地调试#xff0c;回调到你的线上地址。你可以在本…项目场景 前端使用vue3ts 后端使用nestjs 1.申请appId,appKey 1.进入qq互联官网。创建应用 特别注意 1.在填写网站回调域时,需要你线上真实能访问的。不然审核不通过。我的回调地址是前端路由地址 2.如果你想本地调试回调到你的线上地址。你可以在本地设置本地域名做反向代理。我是用的是phpstudy方向代理自己的线上域名。 如果你还是不明白可以留言 2.代码演示 特别注意: 如果你跟我一样是前后端分离的模式开发的应用回调地址填写的应该是你的前端路由地址。在你的前端页面获取code把code值传给后端接口。后端接口通过code获取gitee用户信息。 代码演示 我的应用回调地址:http://localhost:8080/vuecms/qq 前端点击qq图标登录代码: div clickhandleToLogin(qq)gitee /divconst handleToLogin (type:string){window.location.hrefhttp://localhost:3000/user/oauth/qq }http://localhost:3000/user/oauth/qq后端接口代码 Get(/oauth/qq)async qqLogin(Res() response: Response) {let appId 你的appId;let redirectUrl 你的回调地址;const state Date.now()let scope get_user_info,list_albumreturn qqOauthConfig.authorizeUrlclient_id${appId}redirect_uri${redirectUrl}state${state}scope${scope};}回调地址前端代码 templatediv classu-f u-f-ac u-f-ajc stylewidth: 100%;height:100vhtemplate v-ifisOauthel-resulticonsuccesstitle授权成功,跳转中.../el-result/templatetemplate v-elseel-resulticonerrortitle授权失败/el-result/template/div /templatescript setup langtsimport {useRoute,useRouter} from vue-router;import {onMounted} from vue/runtime-core;import {requestGiteeLogin} from /network/common/oauthPage;import {setToken, setUserId, setUsername} from /utils/storage;import {handleGetCurInstance} from /utils/utils;import {ref} from vuelet route useRoute()let router useRouter()let query route.query;let {model} handleGetCurInstance()let isOauth ref(true)onMounted((){//获取返回的code通过code对后端发起请求获取qq用户信息let {code,state} query;let form {code,state}requestQQLogin(form).then(res{let {data,code,message} res;if(code200){setToken(data.token)setUserId(data.id)setUsername(data.username)window.location.href/}else{model.handleMsg(message,warning)isOauth.value false;}})}) /scriptrequestQQLogin请求的后端代码 // qq 的认证配置 export const qqOauthConfig {cid: ,//gitee官网设置获取secret: ,redirectURL: ,//gitee官网配置进行填写authorizeUrl: https://graph.qq.com/oauth2.0/authorize?response_typecode,getAccessTokenUrl: https://graph.qq.com/oauth2.0/token?grant_typeauthorization_code,openId:https://graph.qq.com/oauth2.0/me,qqUserAPI:https://graph.qq.com/user/get_user_info };//qq登录Post(/oauth/qqLogin)async getQQInfo(Body() qqLoginDto:QqLoginDto,IpAddress() clientIp: string) {let {code,operationSystem,browser} giteeLoginDtolet accessToken:any await this.handleGetQQAccessToken(code)if(!accessToken.data){return this.msgService.fail(code过期请重新登录)}let giteeInfo:any await this.getQQInfoByAccessToken(accessToken.data.accessToken,accessToken.data.appId);if(!giteeInfo.data){return this.msgService.fail(获取qq账号信息失败)}let { nickname } giteeInfo.data.userData;let clientId 0;let qqId sysConfigEnum.qqLoginConfig JSON.parse(JSON.stringify(giteeInfo.data.openid));//判断qq是否有关联账号。如果有就登陆没有就新创建一个账号let userNum await this.userEntity.createQueryBuilder().where({ qqId:qqId }).getCount()let username;//没有账号注册帐号if(userNum0){let roleData await this.roleEntity.createQueryBuilder().where({roleName:试用角色}).getOne()username handleGetCode(8);username await this.handleGetUsername(username);let originalPwd handleGetCode(8);let password JSON.parse(JSON.stringify(originalPwd))password securityMd5(password)let userData;try {userData await this.userEntity.createQueryBuilder().insert().values({username,originalPwd,password,qqId:qqId,roleId:roleData.id}).execute();}catch (error) {throw new HttpException(error,HttpStatus.SERVICE_UNAVAILABLE)}clientId userData.identifiers[0][id]}else{let userData await this.userEntity.createQueryBuilder().where({qqId:qqId}).getOne()username userData.usernameclientId userData.id;}let ip handleDealIpv6ToIpv4(clientIp)let token this.authService.createToken({id:clientId,username,ip})await this.updateUserInfoStatus(clientId,token,ip,operationSystem,browser)return {id:clientId,username,token}}//获取gitee的accessTokenasync handleGetQQAccessToken(code:string):PromiseresInterface{let key sysConfigEnum.qqLoginConfiglet data await this.sysConfigService.handleGetSysData(key)if(!data.appId || !data.appKey || !data.redirectUrl){return {data:false,msg:};}let appId data.appId;let appKey data.appKey;let redirectUrl data.redirectUrl;//回调路劲获取codelet authData await axios.get(qqOauthConfig.getAccessTokenUrlcode${code}client_id${appId}client_secret${appKey}redirect_uri${redirectUrl}).then(res{let resArr res.data.split()let accessToken resArr[0].split()[1]let expiresIn resArr[1].split()[1]let refreshToken resArr[2].split()[1]return {accessToken,expiresIn,refreshToken};}).catch(err{return err.data})if(authData?.error){return this.msgService.commonRes(false,authData?.error?.error_description);}else{return this.msgService.commonRes({accessToken:authData?.accessToken,appId},);}}//通过access_token获取gitee信息async getQQInfoByAccessToken(accessToken: boolean | string,appId:string){let authData await axios.get(qqOauthConfig.openId?access_token${accessToken}).then(res{let data JSON.parse(res.data.substring(9, res.data.length-3))let clientId data.client_id;let openid data.openid;return {clientId,openid};}).catch(err{return err.data})if(authData?.error){return this.msgService.commonRes(false,authData?.error?.error_description);}let userData await axios.get(qqOauthConfig.qqUserAPI?access_token${accessToken}oauth_consumer_key${appId}openid${authData.openid}).then(res{return res.data;}).catch(err{return err.data})if(userData?.error){return this.msgService.commonRes(false,authData?.error?.error_description);}else{return this.msgService.commonRes({userData,openid:authData.openid},);}} 3.特别注意 如果以上步骤都没问题。需要把本地测试回调地址改为线上路径 如果你还是不懂你可以克隆下我的项目。开源免费。如果对你有帮助给我一个star就行了 https://gitee.com/derekgo/vue-cms_xg ✨ 踩坑不易还希望各位大佬支持一下 \textcolor{gray}{踩坑不易还希望各位大佬支持一下} 踩坑不易还希望各位大佬支持一下 个人主页 \textcolor{green}{个人主页} 个人主页 沉默小管 个人网站 \textcolor{green}{个人网站} 个人网站 沉默小管 个人导航网站 \textcolor{green}{个人导航网站} 个人导航网站 沉默小管导航网 我的开源项目 \textcolor{green}{我的开源项目} 我的开源项目 vueCms.cn 技术交流 Q Q 群 837051545 \textcolor{green}{技术交流QQ群837051545} 技术交流QQ群837051545 点赞你的认可是我创作的动力 \textcolor{green}{点赞你的认可是我创作的动力} 点赞你的认可是我创作的动力 ⭐️ 收藏你的青睐是我努力的方向 \textcolor{green}{收藏你的青睐是我努力的方向} 收藏你的青睐是我努力的方向 ✏️ 评论你的意见是我进步的财富 \textcolor{green}{评论你的意见是我进步的财富} 评论你的意见是我进步的财富 如果有不懂可以留言我看到了应该会回复 如有错误请多多指教
http://www.hkea.cn/news/14431749/

相关文章:

  • 做交易网站需要多少钱如何查找昆明公司的网站
  • 农业基本建设项目信息网站我自己怎么建网站
  • 网站开发郑州外贸做的社交网站有哪些
  • 网站建 设方案说明书wordpress单页下载
  • 商商业网站建设工程建设项目施工招标投标办法
  • 自己做网站需要服务器建网站公司成都
  • 网站建设产品邯郸住房和城乡建设局网站
  • wordpress整站数据免费网页制作网站
  • 企业网站seo成功案例帮别人做网站的公司
  • 郑州做品牌网站的公司房地产设计部岗位职责
  • 医院门户网站建设方案装修公司网站建设的意义
  • 外贸网站用什么语言沈阳网站推广运营公司
  • 网站建设单位不给数据库邯郸信息港官网登录
  • 众筹网站建设 网站定制开发wordpress创意小工具
  • 美辰网站建设龙岗网站建设代理商
  • 淄博网络长沙百度推广优化排名
  • 设计大师网站我在海贼开发app免费
  • 提高网站浏览量惠州网站建设兼职
  • 把网站放到服务器上微信公众平台模板制作
  • 环保公司网站模版西部数码装wordpress
  • 苏州做网站好的公司网站建设的安全措施
  • 网站建设神器国外做兼职网站有哪些
  • 甘肃seo网站ui设计技术培训培训班
  • 淮南企业网站建设庄浪县门户网
  • 做网站没资源手机手机网站开发
  • 网站开发要学习路线餐饮官网建站模板
  • 可以免费做网站网站设计制作哪个公司的好
  • 物联网网站开发a5做网站
  • 郑州建设网站哪家好杭州的网站建设公司有哪些
  • 网站建设新手指南小程序开发注意事项