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

iis网站访问用户百度广告联盟一个月能赚多少

iis网站访问用户,百度广告联盟一个月能赚多少,绵阳网站建设工作室,flash做网站通栏需要实现的效果就是在钉钉内点击应用能跳转到第三方网站并且免密登录 1.登录钉钉PC端管理后台 2.通过管理后台进去开发者后台 3.应用开发 创建H5微应用 4.应用创建成功后直接点权限管理全部授权 5.设置H5登录地址 6. 应用管理发布 至此需要配置的步骤全部已完成,…

需要实现的效果就是在钉钉内点击应用能跳转到第三方网站并且免密登录

1.登录钉钉PC端管理后台

2.通过管理后台进去开发者后台 

3.应用开发 创建H5微应用

4.应用创建成功后直接点权限管理全部授权

5.设置H5登录地址 

6. 应用管理发布

 至此需要配置的步骤全部已完成,需要记住已下三个参数后续开发时候会用到

Client ID、Client Secret、CorpId

上代码

前端用的VUE

// 1.需要下载钉钉包
npm install dingtalk-jsapi --save// 2.引入包
import * as dd from 'dingtalk-jsapi';// 3.编写相关登录逻辑
async function initDD() {//判断是不是通过钉钉内打开的应用if (dd.env.platform !== "notInDingTalk") {//进行钉钉登录操作dd.ready(() => {//获取登录一次性凭证dd.runtime.permission.requestAuthCode({corpId: '换成自己对应的参数以上有说明', // 企业id}).then(ddRes => {//凭证获取成功后调用后端登录接口完成相关自动登录逻辑loginDingTalk(ddRes.code).then(res => {//记录应用登录凭证到本地userStore.updateToken(res.data.data.token);nextTick(() => {//跳转到主页router.push(PageEnum.BASE_HOME);});});}).catch(err => {alert(JSON.stringify(err));});});}
}

 后端.NET

WebApi 接口

    /// <summary>/// 用户登录./// </summary>/// <returns></returns>[HttpPost("Login/DingTalk/{code}")][AllowAnonymous][IgnoreLog]public async Task<dynamic> LoginDingTalk(string code){DingUtil ding = new DingUtil();//得到企业访问tokenstring accessToken = ding.GetDingToken("Client ID对应自己应用", "Client Secret对应自己应用");//得到当前钉钉登录的用户信息string strObj = ding.GetUserInfoInApp(code, accessToken);JObject objData = strObj.ToObject();//通过钉钉移动电话获取第三方本地用户信息UserEntity userEntity = await _userRepository.GetFirstAsync(x => x.MobilePhone.Equals(objData["Mobile"]));if (userEntity == null) throw Oops.Bah("当前应用无账号,请联系管理员");//获取到用户信息后完成自动登录相关逻辑 并返回第三方应用登录凭证给登录界面进行缓存var loginInput = await GetUserInfoByUserAccount(userEntity.Account);var result = await Login(loginInput);return new { code = 200, data = result };}
using DingTalk.Api;
using DingTalk.Api.Request;
using DingTalk.Api.Response;
using Mapster;
using Minio.DataModel.Tracing;
using NetTaste;
using Org.BouncyCastle.Ocsp;
using System.Text.RegularExpressions;
using Tea;
using static DingTalk.Api.Request.OapiRobotSendRequest;
using static DingTalk.Api.Response.OapiV2DepartmentListsubResponse;
using static DingTalk.Api.Response.OapiV2UserListResponse;namespace DingDing;/// <summary>
/// 钉钉.
/// </summary>
public class DingUtil
{/// <summary>/// 访问令牌./// </summary>public string token { get; private set; }/// <summary>/// token有效时间./// </summary>public TimeSpan expiresTime { get; private set; }/// <summary>/// 构造函数./// </summary>/// <param name="appKey">企业号ID.</param>/// <param name="appSecret">凭证密钥.</param>public DingUtil(string appKey, string appSecret){token = GetDingToken(appKey, appSecret);}/// <summary>/// 构造函数./// </summary>/// <param name="appKey">企业号ID.</param>/// <param name="appSecret">凭证密钥.</param>public DingUtil(){}/// <summary>/// 钉钉token./// </summary>/// <param name="appKey">企业号ID.</param>/// <param name="appSecret">凭证密钥.</param>/// <returns></returns>public string GetDingToken(string appKey, string appSecret){try{var tokenurl = "https://oapi.dingtalk.com/gettoken";DefaultDingTalkClient client = new DefaultDingTalkClient(tokenurl);OapiGettokenRequest req = new OapiGettokenRequest();req.SetHttpMethod("GET");req.Appkey = appKey;req.Appsecret = appSecret;OapiGettokenResponse response = client.Execute(req);if (response.Errcode == 0){// 过期时间expiresTime = DateTime.Now.Subtract(DateTime.Now.AddSeconds(response.ExpiresIn));return response.AccessToken;}else{throw new Exception("获取钉钉Token失败,失败原因:" + response.Errmsg);}}catch (Exception ex){return string.Empty;}}public string GetUserInfoInApp(string code, string accessToken){var client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/v2/user/getuserinfo");OapiV2UserGetuserinfoRequest req = new OapiV2UserGetuserinfoRequest();req.Code = code;OapiV2UserGetuserinfoResponse rsp = client.Execute(req, accessToken);if (rsp.Errcode == 0){// 根据unionid获取useridstring unionid = rsp.Result.Unionid;DefaultDingTalkClient clientDingTalkClient = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/user/getbyunionid");OapiUserGetbyunionidRequest reqGetbyunionidRequest = new OapiUserGetbyunionidRequest();reqGetbyunionidRequest.Unionid = unionid;OapiUserGetbyunionidResponse oapiUserGetbyunionidResponse = clientDingTalkClient.Execute(reqGetbyunionidRequest, accessToken);if (oapiUserGetbyunionidResponse.Errcode == 0){// 根据userId获取用户信息string userid = oapiUserGetbyunionidResponse.Result.Userid;var user = GetUserInfoByUserId(userid, accessToken);return user;}}return string.Empty;}/// <summary>/// 根据用户UserId取得用户信息./// </summary>/// <param name="userId"></param>/// <returns></returns>private string GetUserInfoByUserId(string userId, string accessToken){var client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/v2/user/get");var req = new OapiV2UserGetRequest();req.Userid = userId;req.Language = "zh_CN";var res = client.Execute(req, accessToken);if (res.Errcode == 0) return res.Result.ToJsonString(); else throw new Exception(res.ErrMsg);}#region 用户
}

http://www.zhongyajixie.com/news/20679.html

相关文章:

  • asp做的网站怎么发布电子商务是干什么的
  • 阿克苏网站怎么做seo如何让关键词排名靠前
  • 濮阳网站建设 公司名字seo 什么意思
  • 网站建设总经理岗位职责百度小说搜索热度排行榜
  • phpcms做双语网站万网域名
  • 订阅号不认真可以做网站么百度推广排名代发
  • 想把书放到二手网站如何做杭州seo网络公司
  • 网站开发维护站长工具端口检测
  • 转运公司网站建设百度邮箱注册入口
  • 织梦做旅游网站关于营销的最新的新闻
  • 做网站的如何找业务搜索引擎优化目标
  • 专注于上海seo做网站建设logo设计
  • whois域名查询网站开鲁seo网站
  • 营销版网站关键词排名优化怎么样
  • 手机网站开发成app拍照搜索百度识图
  • 北京做网站的大公司jsurl中文转码
  • 网络公司做网站线上推广有哪些
  • 网上商城网站设计网络营销学什么
  • 有关建设网站的英语文献品牌策划公司
  • 网站模板html 汽车膜陕西seo快速排名
  • 广西建设工会网站企业网站的功能
  • 郯城网站建设信阳网络推广公司
  • 属于您自己的网站建设网络营销专业是干什么的
  • 会做网站有什么可以做吗郑州网络推广代理顾问
  • 做网站开发考什么研网站seo设计方案案例
  • 网站制作内容文案搜索引擎排行榜前十名
  • 网站设计培训班创业搜索引擎营销方法
  • h5网站和传统网站区别教育培训报名
  • 营销方式有哪些超级seo助手
  • 简单易做的网站百度官方平台