博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于.Net平台C#的微信网页版API
阅读量:7081 次
发布时间:2019-06-28

本文共 3319 字,大约阅读时间需要 11 分钟。

git上有很多类似的项目,但大多都是python和js的,为了便于.Net windows平台的使用,我重构了一个.Net版本的,已整理开源

WebWeChat.Net

基于.Net平台C#的微信网页版API

近期更新

  • 实现API基础功能

开发运行环境

vs2015+.net4.0 framework

依赖项

json.net 4.0

Feature

  • 最小依赖,使用简单
  • 支持同步、基于事件回调的异步方法
  • 对象间隔离,可以实例化无数客户端

简单使用

具体内容见源码,此处仅简单说明

static void Main(string[] args){    Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);    AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;    client = new Client();    qrForm = new QrCodeForm();    client.ExceptionCatched += Client_ExceptionCatched; ;    client.GetLoginQrCodeComplete += Client_GetLoginQrCodeComplete; ;    client.CheckScanComplete += Client_CheckScanComplete; ;    client.LoginComplete += Client_LoginComplete; ;    client.BatchGetContactComplete += Client_BatchGetContactComplete; ;    client.GetContactComplete += Client_GetContactComplete; ;    client.MPSubscribeMsgListComplete += Client_MPSubscribeMsgListComplete; ;    client.LogoutComplete += Client_LogoutComplete; ;    client.ReceiveMsg += Client_ReceiveMsg; ;    client.DelContactListComplete += Client_DelContactListComplete; ;    client.ModContactListComplete += Client_ModContactListComplete;      Console.WriteLine("小助手启动");    client.Start();    qrForm.ShowDialog();    Console.ReadLine();    client.Close();    Console.ReadLine();    client.Logout();}

方法说明

/// /// 异步发送文字消息/// /// 消息/// 发送人UserNamepublic void SendMsgAsync(string msg, string toUserName)/// /// 同步发送文字消息/// /// 文字/// 发送人UserName/// 
public SendMsgResponse SendMsg(string msg, string toUserName)/// /// 异步发送文件/// /// 文件信息/// 发送人UserNamepublic void SendMsgAsync(FileInfo fileInfo, string toUserName)/// /// 同步发送文件,自动分块上传,文件较大可能会卡住进程,建议异步发送/// /// 文件信息/// 发送人UserName///
public SendMsgResponse SendMsg(FileInfo fileInfo, string toUserName)/// /// 获取头像,因为请求的时候需要带Cookie等相关参数,所以直接用新的http请求不行,务必使用客户端API来获取/// /// 头像地址,例如/cgi-bin/mmwebwx-bin/webwxgeticon?seq=0&username=filehelper&skey=@crypt_372b266_540d016177e861740ee84fec697a3b01 /// 委托Action///
public void GetIconAsync(string url, Action action)/// /// 同步上传文件/// /// 文件信息///
public UploadMediaResponse UploadFile(FileInfo fileInfo)/// /// 同步修改备注/// 注意:多次调用该接口会被封/// /// 需要修改的备注名/// 需要修改的联系人UserName///
public SimpleResponse RemarkName(string remarkName, string userName)/// /// 同步通过好友认证/// /// sync中获得的申请信息///
public SimpleResponse VerifyUser(RecommendInfo info)/// /// 同步顶置聊天/// 注意:多次调用该接口会被封/// /// 备注名,官方接口同时附带这个参数,我们也带上吧/// 需要修改的联系人UserName///
public SimpleResponse TopContact(string remarkName, string userName)/// /// 同步取消顶置消息/// /// 备注名,官方接口同时附带这个参数,我们也带上吧/// 需要修改的联系人UserName///
public SimpleResponse UnTopContact(string remarkName, string userName)/// /// 群里移除用户,用IsOwner判断自己是不是群主,否则没有权限/// /// /// 用户UserName,英文,分割///
public UpdateChatRoomResponse RemoveChatRoomMember(string roomName, List
delNameList)///
/// 添加用户到群聊/// ///
群UserName///
用户UserName,英文,分割///
public UpdateChatRoomResponse AddChatRoomMember(string roomName, List
addNameList)///
/// 创建群,调用完成,可以用返回的信息,通过GetBatchGetContact去获取群信息/// ///
UserName的list///
public CreateChatRoomResponse CreateChatRoom(List
memberList)

参考

转载于:https://www.cnblogs.com/leestar54/p/7941210.html

你可能感兴趣的文章
对 Sea.js 进行配置 seajs.config
查看>>
VS中几个自动完成快捷键,还算实用
查看>>
DataContext的讨论(1)
查看>>
安装和卸载windows程序
查看>>
linux scp ssh命令不用输入密码
查看>>
HDU 4082 Hou Yi's secret(暴力)
查看>>
SQL Server 2000 :选择许可模式及更改
查看>>
Install marvel and head plugin for ealsticsearch
查看>>
极大似然估计、贝叶斯估计、EM算法
查看>>
数据库团队欢迎你的加入
查看>>
给动态创建的TREE和MAINMENU关联点击事件
查看>>
【转】APP被苹果App Store拒绝的N个原因(持续补充)
查看>>
数据结构基础温故-1.线性表(上)
查看>>
中间件集群的3大策略
查看>>
ELK菜鸟手记 (二) - 高级配置之多应用索引过滤
查看>>
百分点内存数据库架构演变
查看>>
Android 4 游戏高级编程(第2版)
查看>>
BZOJ 2005 能量采集(容斥原理)
查看>>
csharp: MongoDB
查看>>
死了七次的男人
查看>>