iKuai爱快流控路由

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6959|回复: 15
打印 上一主题 下一主题

爱快开放平台接口库,希望有人用得上.2017/3/23更新测试工具

[复制链接]
跳转到指定楼层
楼主
发表于 2017-3-21 08:03:28 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zwfgdlc 于 2017-3-24 14:59 编辑

仓促而作,还很粗糙.
调用方法,请参照示例代码,很简单.
  1. #pragma once

  2. #include <stdio.h>
  3. #include <tchar.h>
  4. #include <Windows.h>

  5. #define API_GET_USER_LIST                1
  6. #define API_KICK_USER                        3
  7. #define API_GET_ONLINE_USER                4
  8. #define API_ADD_USER                        5
  9. #define API_MODIFY_USER_INFO        6
  10. #define API_ENABLE_DISABLE_USER 7
  11. #define API_DELETE_USER                        8
  12. #define API_GET_ROUTER_BASEINFO 9
  13. #define API_WHITELIST_SET                10
  14. #define API_QUERY_USER_INFO                11

  15. enum WHITETYPE{
  16.         MAC = 0,
  17.         HTTP,
  18.         IP,
  19.         HTTPS
  20. };

  21. int __stdcall public_encrypt(unsigned char* data, int data_len, unsigned char* key, unsigned char* encrypted);
  22. void __stdcall UrlEncode(LPCSTR lpszIn, LPSTR lpszOut, DWORD Len);
  23. BOOL __stdcall Base64(LPSTR lpszData, DWORD DataLen, LPSTR lpszBase64, LPDWORD dwBase64Len);
  24. BOOL __stdcall EnvInitialize(LPSTR lpOpenId, LPSTR lpDevice, LPSTR lpPublicKey);
  25. int __stdcall GetDeviceList(LPSTR lpszBuffer, DWORD dwBufferLen);
  26. int __stdcall GetUserList(LPSTR lpszBuffer, DWORD dwBufferLen);
  27. int __stdcall GetOnlineUserList(LPSTR lpszBuffer, DWORD dwBufferLen, int Limit, int Skip);
  28. int __stdcall KickUser(LPSTR lpszBuffer, DWORD dwBufferLen, LPCSTR lpszMac);
  29. int __stdcall AddUser(LPSTR lpszBuffer, DWORD dwBufferLen, LPCSTR lpszUserName, LPCSTR lpszPassword, int Upload = 0, int Download = 0, LPCSTR State = "up", LPCSTR Comment = "", LPCSTR Date = "", LPCSTR Ppptype = "web", int Share = 1, int AutoMac = 0, LPCSTR IpAddr = "", LPCSTR Mac = "", LPCSTR Address = "", LPCSTR Name = "", LPCSTR Phone = "", LPSTR StartDate = "", LPCSTR Cardid = "", int Packages = 0, int Money = 0);
  30. int __stdcall ModifyUserInfo(LPSTR lpszBuffer, DWORD dwBufferLen, int id, LPSTR State = "up", LPSTR Comment = "", LPSTR lpszUserName = "", LPSTR lpszPassword = "", LPSTR Date = "", LPSTR Ppptype = "web", int Share = 1, int AutoMac = 0, int UpLoad = 0, int DownLoad = 0, LPSTR IpAddr = "", LPSTR Mac = "", LPSTR Address = "", LPSTR Name = "", LPSTR Phone = "", LPSTR StartDate = "", LPSTR Cardid = "", int Packages = 0, int Money = 0);
  31. int __stdcall EnableUser(LPSTR lpszBuffer, DWORD dwBufferLen, LPCSTR lpszId, BOOL bState = TRUE);
  32. int __stdcall GetUserId(LPCSTR lpszUserName, LPSTR lpszId);
  33. int __stdcall DeleteUser(LPSTR lpszBuffer, DWORD dwBufferLen, LPCSTR lpszId);
  34. int __stdcall GetRouterInfo(LPSTR lpszBuffer, DWORD dwBufferLen);
  35. int __stdcall SetWhiteList(LPSTR lpszBuffer, DWORD dwBufferLen, LPCSTR WhiteData, WHITETYPE Type);
  36. int __stdcall QueryUserInfo(LPSTR lpszBuffer, DWORD dwBufferLen, LPCSTR lpszUserName);
复制代码


示例:
  1. // iKuaiOpenTest.cpp : 定义控制台应用程序的入口点。
  2. //

  3. #include "stdafx.h"
  4. #include "../iKuaiOpen/lib.h"

  5. #pragma comment(lib, "../release/ikuaiopen.lib")

  6. //RSA公钥
  7. char* lpszPublicKey = "-----BEGIN PUBLIC KEY-----
  8. ";
  9. //开发者ID
  10. CHAR* lpszOpenId = "";
  11. //设备ID
  12. CHAR* lpszDevice = "";

  13. CHAR buffer[8192] = { 0 };

  14. int _tmain(int argc, _TCHAR* argv[])
  15. {
  16.         //初始化环境,设置公钥,开发者ID,设备ID
  17.         EnvInitialize(lpszOpenId, lpszDevice, lpszPublicKey);

  18.         //获取账号列表
  19.         GetUserList(buffer, sizeof(buffer));

  20.         //获取在线用户列表
  21.         GetOnlineUserList(buffer, sizeof(buffer), 100/*获取条数*/, 0/*跳过条数*/);

  22.         //添加账号,设定用户名,密码即可,其他参数可以使用默认值
  23.         AddUser(buffer, sizeof(buffer), "用户名", "密码");

  24.         //查找用户ID
  25.         CHAR szId[8] = { 0 };
  26.         GetUserId("用户名", szId);

  27.         //启用/禁用账号,
  28.         EnableUser(buffer, sizeof(buffer), "用户ID", FALSE/*TRUE为启用,FALSE为禁用*/);

  29.         //删除账号
  30.         DeleteUser(buffer, sizeof(buffer), szId);

  31.         //获取路由基本信息
  32.         GetRouterInfo(buffer, sizeof(buffer));

  33.         //查询账号信息
  34.         QueryUserInfo(buffer, sizeof(buffer), "用户名");
  35.         return 0;
  36. }



复制代码
2017/3/23更新,增加一个API测试工具
Release.rar (666.41 KB, 下载次数: 65)




分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 支持支持 反对反对
沙发
发表于 2017-3-21 09:01:34 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
板凳
 楼主| 发表于 2017-3-21 09:31:40 | 只看该作者

哈!看来开发桌面程序的还是比较少,就一个人下载
地板
发表于 2017-3-21 09:38:18 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
5#
发表于 2017-3-21 09:52:42 | 只看该作者
DELPHI应该也可以调用
6#
 楼主| 发表于 2017-3-21 09:58:07 来自手机访问 | 只看该作者
丕子阿杰 发表于 2017-3-21 09:52
DELPHI应该也可以调用

可以,Delphi,VB,C#都行
7#
发表于 2017-3-21 10:06:26 | 只看该作者
zwfgdlc 发表于 2017-3-21 09:58
可以,Delphi,VB,C#都行

你玩过DELPHI没?有事想请教
8#
 楼主| 发表于 2017-3-21 10:42:54 | 只看该作者
丕子阿杰 发表于 2017-3-21 10:06
你玩过DELPHI没?有事想请教

没玩过,我只能C/C++,不过代码基本能看个大概
9#
发表于 2017-3-21 16:40:22 | 只看该作者
zwfgdlc 发表于 2017-3-21 10:42
没玩过,我只能C/C++,不过代码基本能看个大概

你C++也是通过POST提交实现WEB交互的吧?
10#
 楼主| 发表于 2017-3-21 17:21:00 | 只看该作者
丕子阿杰 发表于 2017-3-21 16:40
你C++也是通过POST提交实现WEB交互的吧?

用的是winhttp相关API,用DELPHI也是可以实现的
https://msdn.microsoft.com/en-us ... 84257(v=vs.85).aspx
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

QQ|小黑屋|手机版|Archiver|论坛规章制度|iKuai Inc. ( 京ICP备13042604号 )

GMT+8, 2024-6-8 20:01

Powered by Discuz! X3.3

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表