微信公众号登录密码错误原因
1、您绑定了QQ邮箱输入的是QQ密码,并非公众号独立密码;
2、目前您输入的密码与您公众号所设置的独立密码不一致;
3、输入登录的帐号不规范,公众平台无法使用中文昵称进行登录使用;
4、若您输入的QQ/邮箱地址已绑定个人微信号也无法进行登录。 #region 微信验证代码部分
/// <summary>
/// 验证微信签名
/// </summary>
/// 将token、timestamp、nonce三个参数进行字典序排序
/// 将三个参数字符串拼接成一个字符串进行sha1加密
/// 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
/// <returns></returns>
private bool CheckSignature()
{
string signature = RequestQueryString["signature"];
string timestamp = RequestQueryString["timestamp"];
string nonce = RequestQueryString["nonce"];
string[] ArrTmp = { Token, timestamp, nonce };
ArraySort(ArrTmp); //字典排序
string tmpStr = stringJoin("", ArrTmp);
tmpStr = FormsAuthenticationHashPasswordForStoringInConfigFile(tmpStr, "SHA1");
tmpStr = tmpStrToLower();
if (tmpStr == signature)
{
return true;
}
else
{
return false;
}
}
public static bool CheckSignature(String signature, String timestamp, String nonce)
{
String[] arr = new String[] { Token, timestamp, nonce };
// 将token、timestamp、nonce三个参数进行字典序排序
ArraySort<String>(arr);
StringBuilder content = new StringBuilder();
for (int i = 0; i < arrLength; i++)
{
contentAppend(arr[i]);
}
String tmpStr = SHA1_Encrypt(contentToString());
// 将sha1加密后的字符串可与signature对比,标识该请求来源于微信
return tmpStr != null tmpStrEquals(signature) : false;
}
/// <summary>
/// 使用缺省密钥给字符串加密
/// </summary>
/// <param name="Source_String"></param>
/// <returns></returns>
public static string SHA1_Encrypt(string Source_String)
{
byte[] StrRes = EncodingDefaultGetBytes(Source_String);
HashAlgorithm iSHA = new SHA1CryptoServiceProvider();
StrRes = iSHAComputeHash(StrRes);
StringBuilder EnText = new StringBuilder();
foreach (byte iByte in StrRes)
{
EnTextAppendFormat("{0:x2}", iByte);
}
return EnTextToString();
}
private void Valid()
{
string echoStr = RequestQueryString["echoStr"];
if (CheckSignature())
{
if (!stringIsNullOrEmpty(echoStr))
{
ResponseWrite(echoStr);
ResponseEnd();
}
}
}
/// <summary>
/// unix时间转换为datetime
/// </summary>
/// <param name="timeStamp"></param>
/// <returns></returns>
private DateTime UnixTimeToTime(string timeStamp)
{
DateTime dtStart = TimeZoneCurrentTimeZoneToLocalTime(new DateTime(1970, 1, 1));
long lTime = longParse(timeStamp + "0000000");
TimeSpan toNow = new TimeSpan(lTime);
return dtStartAdd(toNow);
}
/// <summary>
/// datetime转换为unixtime
/// </summary>
/// <param name="time"></param>
/// <returns></returns>
private int ConvertDateTimeInt(SystemDateTime time)
{
SystemDateTime startTime = TimeZoneCurrentTimeZoneToLocalTime(new SystemDateTime(1970, 1, 1));
return (int)(time - startTime)TotalSeconds;
}
#endregion
希望你能用得上。
1、从微信公众平台打开`开发者服务中心`连接,打开时会提示用户注册成为开发者,接受协议,成为开发者
2、接受协议以后会出现配置选项平台为我们生成了`AppID`,`AppSecret`这些字段我们需要点击`修改配置`对`服务器配置`区块进行配置在此期间,可能会出现信息不全,需要补齐信息的提示,这时候去上传一个公众号的头像就OK了`URL(服务器地址)`指的是我们公众号的服务的地址,也就是我们之前申请好的SAE的服务域名,如果忘记可以去sAE控台查看,我这里的是sinaapp`Token(令牌)`相当于微信服务器和我们自己的服务器之间交流的一个约定,用于确定我们的服务器接收到的消息确实是微信的服务器发出的我这里填写为weixin`(消息加解密密钥)`信息加密密钥随机生成就可以了填写完成后点击提交这时候会提示`token`验证失败
3、token验证失败的原因是,在SAE上还未对token进行验证在`微信公众号`的接入指南中可以看到token的验证方式,并且提供了验证的示例代码
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)