Ejemplo n.º 1
0
        internal static string GetCorpMenuUrl(string urlTemplate, int appId)
        {
            string secret = WeixinSettings.Current.CorpMenuSecret;

            return(string.Format(ObjectUtil.SysCulture, urlTemplate,
                                 CorpAccessToken.GetTokenWithSecret(secret), appId));
        }
Ejemplo n.º 2
0
        internal static CorpAuthToken GetToken(int appId, string code)
        {
            //var current = WeixinSettings.Current;
            string url = string.Format(ObjectUtil.SysCulture, WeCorpConst.AUTH_ACCESS_TOKEN,
                                       CorpAccessToken.GetTokenWithAppId(appId), code, appId);

            return(WeUtil.GetFromUri <CorpAuthToken>(url));
        }
Ejemplo n.º 3
0
        internal static CorpAccessToken CreateToken(string secret)
        {
            string url = string.Format(ObjectUtil.SysCulture, WeCorpConst.TOKEN_URL,
                                       WeixinSettings.Current.AppId, secret);
            CorpAccessToken token = ReadToken(url, new CorpAccessToken());

            token.RegName = secret;
            return(token);
        }
Ejemplo n.º 4
0
        public static DownloadMediaData DownloadFile(string secret, string mediaId)
        {
            TkDebug.AssertArgumentNullOrEmpty(secret, "secret", null);
            TkDebug.AssertArgumentNullOrEmpty(mediaId, "mediaId", null);

            string url = string.Format(ObjectUtil.SysCulture, WeCorpConst.DOWNLOAD_URL,
                                       CorpAccessToken.GetTokenWithSecret(secret), mediaId);

            return(WeUtil.InternalDownloadData(url));
        }
Ejemplo n.º 5
0
        public static MediaId UploadFile(string secret, MediaType mediaType,
                                         string fileName, byte[] fileData)
        {
            TkDebug.AssertArgumentNullOrEmpty(secret, "secret", null);
            TkDebug.AssertArgumentNullOrEmpty(fileName, "fileName", null);
            TkDebug.AssertArgumentNull(fileData, "fileData", null);

            int    maxLength = GetMaxLength(mediaType);
            string url       = string.Format(ObjectUtil.SysCulture, WeCorpConst.UPLOAD_URL,
                                             CorpAccessToken.GetTokenWithSecret(secret),
                                             mediaType.ToString().ToLower(ObjectUtil.SysCulture));

            return(WeUtil.InternalUploadFile(mediaType, fileName, fileData, maxLength, url));
        }
Ejemplo n.º 6
0
        public static string GetToken(string secret)
        {
            TkDebug.AssertArgumentNullOrEmpty(secret, "secret", null);

            IRWLock         rwLock = BaseGlobalVariable.Current.CreateRWLock();
            CorpAccessToken token;

            using (rwLock)
            {
                if (fCurrent == null)
                {
                    token = RWLock.WriteLockAction(rwLock, () =>
                    {
                        CorpAccessToken result = CorpAccessToken.CreateToken(secret);
                        fCurrent = new CorpAccessTokenList();
                        fCurrent.AddToken(result);
                        SaveToken();
                        return(result);
                    });
                    return(token.Token);
                }
                else
                {
                    token = RWLock.ReadLockAction(rwLock, () =>
                    {
                        CorpAccessToken result = fCurrent.CorpTokens[secret];
                        if (result == null || result.IsExpire)
                        {
                            result = RWLock.WriteLockAction(rwLock, () =>
                            {
                                CorpAccessToken newToken = CorpAccessToken.CreateToken(secret);
                                fCurrent.CorpTokens.AddOrReplace(newToken);
                                SaveToken();
                                return(newToken);
                            });
                        }
                        return(result);
                    });
                    return(token.Token);
                }
            }
        }
Ejemplo n.º 7
0
 public void AddToken(CorpAccessToken token)
 {
     fList.Add(token);
 }
Ejemplo n.º 8
0
 public void AddToken(CorpAccessToken token)
 {
     fList.Add(token);
 }
Ejemplo n.º 9
0
 public static string GetCorpUrl(string urlTemplate, string secret)
 {
     return(string.Format(ObjectUtil.SysCulture, urlTemplate,
                          CorpAccessToken.GetTokenWithSecret(secret)));
 }