一步一步做,肯定能成功 HttpHelper类请从网络上搜索

string postData = getPostData();

HttpHelper ht = new HttpHelper();

HttpItem item = new HttpItem()

{

URL = "https://account.xiaomi.com/pass/serviceLoginAuth2",

Method = "POST",

Postdata = postData,

CookieContainer = new System.Net.CookieContainer(),

ContentType = new MiLoginHttpHelper().contentType,

};

string html = ht.GetHtml(item).Html;

方法:getPostData()

private string getPostData()

{

string name = txtUName.Text.Trim();

string pwd = txtPwd.Text.Trim();

PostParaPair model = new PostParaPair();

model.Add(new PostParaPair() { Key = "_sign", Value = "R4cRs0JL2JfHHaPenjPG2c3Foa4=" });

model.Add(new PostParaPair() { Key = "callback", Value = "https://account.xiaomi.com/sts?sign=6aRtWvCpNNuCwNpKtdu9CEEJOL8%3D&followup=https%3A%2F%2Faccount.xiaomi.com%2Fpass%2FuserInfo&sid=passport" });

model.Add(new PostParaPair() { Key = "qs", Value = "%3Fcallback%3Dhttps%253A%252F%252Faccount.xiaomi.com%252Fsts%253Fsign%253D6aRtWvCpNNuCwNpKtdu9CEEJOL8%25253D%2526followup%253Dhttps%25253A%25252F%25252Faccount.xiaomi.com%25252Fpass%25252FuserInfo%2526sid%253Dpassport%26sid%3Dpassport" });

model.Add(new PostParaPair() { Key = "pwd", Value = pwd });

model.Add(new PostParaPair() { Key = "serviceParam", Value = "{\"checkSafePhone\":false}" });

model.Add(new PostParaPair() { Key = "sid", Value = "passport" });

model.Add(new PostParaPair() { Key = "user", Value = name });

return model.ToString();

}

类PostParaPair:

public class PostParaPair
{
    List<PostParaPair> paraList = new List<PostParaPair>();
    public string Key { get; set; }
    public string Value { get; set; }
    public void Add(PostParaPair para)
    {
        paraList.Add(para);
    }
    public override string ToString()
    {
        string reString = "";
        if (paraList.Count != 0)
        {
            foreach (PostParaPair item in paraList)
            {
                reString += string.Format("&{0}={1}", item.Key, CommonMethod.GetUrlEncode(item.Value));
            }
        }
        return reString.TrimStart('&');
    }
}

CommonMethod.GetUrlEncode:方法

public static string GetUrlEncode(string content)
    {
        return System.Web.HttpUtility.UrlEncode(content, System.Text.Encoding.UTF8);
    }

小米网站登录源码C#版的更多相关文章

  1. Yii2 使用 QQ 和 Weibo 第三方登录源码

    我们社区在 yii2-authclient 多次升级后,登录异常.一直想寻求一种通用的方法,尽量不重写 OAuth2, BaseOAuth 以及 OAuthToken 类, 所以本次直接在 initU ...

  2. Saiku登录源码追踪.(十三)

    Saiku登录源码追踪呀~ >>首先我们需要debug跟踪saiku登录执行的源码信息 saiku源码的debug方式上一篇博客已有说明,这里简单介绍一下 在saiku启动脚本中添加如下命 ...

  3. 原创:用python把链接指向的网页直接生成图片的http服务及网站(含源码及思想)

    原创:用python把链接指向的网页直接生成图片的http服务及网站(含源码及思想) 总体思想:     希望让调用方通过 http调用传入一个需要生成图片的网页链接生成一个网页的图片并返回图片链接 ...

  4. CAS Server集成QQ登录、新浪微博登录源码及配置文件

    转载自素文宅博客:https://blog.yoodb.com/yoodb/article/detail/1446 CAS Server集成QQ第三方登录,CAS Server集成新浪微博第三方登录以 ...

  5. 类似818tu.co微信小说分销系统设计之多公众号网页授权自动登录源码

    /** 转载请保留原地址以及版权声明,请勿恶意修改 *  作者:杨浩瑞  QQ:1420213383  独立博客:http://www.yxxrui.cn * [后台]http://xiaoshuo. ...

  6. 类似818tu.c微信小说分销系统设计之多公众号网页授权自动登录源码分享

    /** 转载请保留原地址以及版权声明,请勿恶意修改 *  作者:杨浩瑞  QQ:1420213383  独立博客:http://www.yxxrui.cn * [后台]http://xiaoshuo. ...

  7. 360safe安全卫士防网站攻击源码

    近段时间,公司网站老被攻击,于是研究起防止攻击方法,当然无外乎就是SQL注入之类的问题,无意间发现了一个360安全卫士提供的源码,觉得挺好的,咋们暂且不说防攻击效果,至少思路是很好的,奉献给大家,大家 ...

  8. 学生信息管理系统应用ios源码iPad版

    学生信息管理系统应用iPad版,该应用源码比较完整的,而且也很详细,这也是一款学校用的学生和老师管理系统,里面涉及到了很多ipad常用的控件,操作和数据存储. <ignore_js_op> ...

  9. 高仿百度传课应用客户端源码iOS版

    高仿百度传课iOS版,版本号:2.4.1.2 运行环境:xcode6.3  ios8.3 (再往上系统没有测试) 转载请注明出处,不可用于商业用途及不合法用途. 如果你觉得不错,欢迎  star  哦 ...

随机推荐

  1. java中的wait(),notify(),notifyAll(),synchronized方法

    wait(),notify(),notifyAll()三个方法不是Thread的方法,而是Object的方法.意味着所有对象都有这三个方法,因为每个对象都有锁,所以自然也都有操作锁的方法了.这三个方法 ...

  2. PHP通用的XSS攻击过滤函数,Discuz系统中 防止XSS漏洞攻击,过滤HTML危险标签属性的PHP函数

    XSS攻击在最近很是流行,往往在某段代码里一不小心就会被人放上XSS攻击的代码,看到国外有人写上了函数,咱也偷偷懒,悄悄的贴上来... 原文如下: The goal of this function ...

  3. MYSQL(二)

    上一篇文章讲的是mysql的基本操作,这一篇会有一点难以理解,本节主要内容mysql视图,存储过程,函数,事务,触发器,以及动态执行sql 视图view 视图是一个虚拟表,其内容由查询定义.同真实的表 ...

  4. 双击导航栏自动滑动ListView到顶部

    有些app都实现了双击导航栏让页面的list自动滑动到顶部的feature. 先实现一个继承于OnTouchListener的监听多次点击事件的监听器,通过callback把连续点击的次数返回给客户代 ...

  5. 外网通过root账户访问虚拟机mysql

    http://www.cnblogs.com/live41/archive/2013/04/02/2995178.html

  6. MariaDB 多主一从 搭建测试

    背景: 目前MySQL依然只支持一个Slave从一个Master复制数据,虽然也可以做到一主多备(M->S),双主复制(M<->M)等架构,但是局限性依然很大.由于项目的要求,需要各 ...

  7. CCProxy二级代理上网设置

    假如电脑A可以通过代理服务器上网,B电脑又可以连接A电脑,那么A电脑可以作为二级代理服务器进行上网,需要设置如下: 1.在A电脑上安装CCProxy,以v8.0为例 2.选择设置->高级 3.启 ...

  8. 昨天开发引入的两个错误--Parcelable

    以下的代码有两处明显的错误,一不小心就会写出如下错误的代码,其中第2个问题调试起来很麻烦: 1 public class AddedBannerInfo implements Parcelable { ...

  9. 给包含compid列且值为null ,表的行数据赋值--

    IF OBJECT_ID ('dbo.spSelectColValue_In_DB') IS NOT NULL DROP PROCEDURE dbo.spSelectColValue_In_DB go ...

  10. C#反射机制 Type类型

    using System;using System.Collections.Generic;using System.Linq;using System.Reflection;using System ...