### Task Pool: Get Task List Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This example demonstrates a POST request to fetch a list of tasks from the task pool. The request body includes parameters for pagination (Page, Size), ordering (Order), task type (Tid), and simplification (isSimple). ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "TaskPoolGetDataList", "Page":1, "Size":1, "Order":1, "Tid":1, "isSimple":0, "Time": 1688551155, "Status": 13013 } ``` -------------------------------- ### Get User Class List Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example HTTP POST request to retrieve a list of user types for the current application. This list can be used for user selection or conversion purposes. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "GetUserClassList", "Time": 1688007304, "Status": 87701 } ``` -------------------------------- ### Get Dynamic Tag Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This is an example of a POST request to the GetTab API, used to retrieve dynamic tag information. It includes the API name, timestamp, and status code. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "GetTab", "Time": 1688007304, "Status": 87701 } ``` -------------------------------- ### Purchase Credits Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This is an example of a POST request to the PayMoneyToVipNumber API, used for purchasing credits with balance. It includes the amount of money to spend and other necessary details. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "PayMoneyToVipNumber", "Money": 1.35, "Time": 1688007304, "Status": 87701 } ``` -------------------------------- ### Task Pool: Get Data Response Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This is an example of a successful response when requesting task data. It includes a status code, timestamp, and a Data object containing ReturnData, Status, TimeEnd, and TimeStart for the task. ```JSON { "Data": { "ReturnData": "", "Status": 1, "TimeEnd": 0, "TimeStart": 1684762832 }, "Time": 1684762832, "Status": 13013, "Msg": "" } ``` -------------------------------- ### Task Pool Get Task Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This is an example of an HTTP POST request to retrieve task data from the task pool. It requires an application ID and includes a JSON body with the API name, task type ID, task UUID, and timestamps. ```http POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "TaskPoolGetData", "TaskTypeId":1, "TaskUuid": "1a6547d1-269d-4ca4-b1b8-b86fb6d41287", "Time": 1688551155, "Status": 13013 } ``` -------------------------------- ### Success Response Example (JSON) Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api A general example of a successful API response, indicating the status, time, and any relevant message or data. This structure is common across multiple endpoints. ```json { "Data": { "Status": 3, "KaName": "aaaaasdawdawdawda" }, "Time": 1688535190, "Status": 13013, "Msg": "" } ``` -------------------------------- ### POST Request Example for IsLogin API Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This snippet shows an example of a POST request to the IsLogin API. It includes the endpoint, headers, and the JSON body containing the application ID, a timestamp, and a status code. The response example shows a successful login confirmation with a timestamp, status code, and an empty message. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "IsLogin", "Time": 1688118838, "Status": 35445 } ``` ```JSON { "Time": 1688118839, "Status": 35445, "Msg": "" } ``` -------------------------------- ### Get JWT Token Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This example demonstrates a POST request to obtain a JWT token. It requires an 'AppId' in the URL and specific parameters in the JSON body, including 'Api', 'Time', and 'Status'. Additional arbitrary key-value pairs can be included in the body to be added to the signature. ```http POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "GetJwtToken", "Time": 1688551155, "Status": 13013, "aaa":"aaa" } ``` -------------------------------- ### Get Login Short URL Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This example shows a POST request to generate a login short URL. It includes an 'AppId' in the URL and requires 'Api', 'Time', and 'Status' in the JSON body. An optional 'JumpUrl' can be provided to specify a redirect location after successful login. ```http POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "LoginShortUrl", "Time": 1688551155, "Status": 13013, "JumpUrl": "pages/user/home" } ``` -------------------------------- ### Get Payment Order Status (GET Request Example) Source: https://www.fnkuaiyan.cn/WebApi/WebApi This example shows how to retrieve the payment status of an order using an HTTP GET request. The OrderId is included as a query parameter. ```http GET http://127.0.0.1:18888/WebApi/Pay/GetPayOrderStatus?OrderId=2023100622001414411410844851&Token=LAX6LCUN6KHBHYURTKHL2SM0QFIKMYG4 HTTP/1.1 ``` -------------------------------- ### User Registration API Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Handles the registration of new users. ```APIDOC ## POST /Api ### Description Registers a new user account with the provided details. ### Method POST ### Endpoint /Api?AppId={AppId} #### Path Parameters - **AppId** (integer) - Required - Application AppId #### Query Parameters - **Token** (string) - Required - Obtained from the `Get Token` endpoint. #### Request Body - **Api** (string) - Required - Fixed API name: "NewUserInfo" - **User** (string) - Required - Username to be registered. - **PassWord** (string) - Required - Password for the new account. - **Key** (string) - Required - Binding information. - **SuperPassWord** (string) - Required - Super password, can be extended for security questions. - **Qq** (string) - Optional - Contact QQ number. - **Email** (string) - Optional - Contact email address. - **Phone** (string) - Optional - Contact phone number. - **Time** (integer) - Required - 10-digit current timestamp. - **Status** (integer) - Required - Success code, a locally generated random integer greater than 10000. The same code will be returned on successful response. ### Request Example ```json { "Api": "NewUserInfo", "User": "aaaaaa", "PassWord": "aaaaaa", "Key": "绑定信息", "SuperPassWord": "qqqqqqq", "Qq": "1056795985", "Email": "1056795985@qq.com", "Phone": "13166666666", "Time": 1688118838, "Status": 87701 } ``` ### Response #### Success Response (200) - **Time** (integer) - 10-digit server current timestamp. - **Status** (integer) - Response status code. For successful operations, it's the same as the submitted Status; for failures, refer to the status code list. - **Msg** (string) - Response status code prompt message. #### Response Example ```json { "Time": 1688135604, "Status": 87701, "Msg": "注册成功" } ``` #### Failure Responses - **Time** (integer) - 10-digit server current timestamp. - **Status** (integer) - Response status code. For successful operations, it's the same as the submitted Status; for failures, refer to the status code list. - **Msg** (string) - Response status code prompt message. Example Failure Responses: ```json { "Time": 1684034845, "Status": 200, "Msg": "email邮箱格式不正确" } ``` ```json { "Time": 1684034898, "Status": 200, "Msg": "超级密码以字母开头,长度在6-18之间,只能包含字符、数字和下划线" } ``` ```json { "Time": 1684035056, "Status": 200, "Msg": "超级密码不能和密码相同" } ``` ```json { "Time": 1684035081, "Status": 200, "Msg": "用户已存在" } ``` ``` -------------------------------- ### Get Pay Card List Response Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example JSON response for a successful request to get a list of pay cards. It includes a list of card objects, each with an Id, Money, and Name. ```JSON { "Data": [ { "Id": 18, "Money": 3, "Name": "天卡" }, { "Id": 19, "Money": 100, "Name": "月卡" } ], "Time": 1688118575, "Status": 87701, "Msg": "" } ``` -------------------------------- ### Get Public Variable Request Example (POST) Source: https://www.fnkuaiyan.cn/WebApi/WebApi This example demonstrates how to retrieve a public variable using a POST request. The 'Name' of the variable to fetch is sent in the request body. ```http POST http://127.0.0.1:18888/WebApi/GetPublicData HTTP/1.1 { "Name":"会员数据a" } ``` -------------------------------- ### 重置管理员密码 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 提供了通过宝塔数据库管理,修改 `db_Admin` 表中 `PassWord` 字段来重置管理员密码的步骤。 ```APIDOC ## 重置管理员密码 宝塔打开数据库管理,修改表`db_Admin->PassWord`管理员密码为`21232f297a57a5a743894a0e4a801fc3`,即可重新使用admin登录管理后台 ``` -------------------------------- ### Get Payment Order Status (POST Request Example) Source: https://www.fnkuaiyan.cn/WebApi/WebApi This example demonstrates how to request the payment status of an order using an HTTP POST request. It sends the OrderId in the request body. ```http POST http://127.0.0.1:18888/WebApi/Pay/GetPayOrderStatus HTTP/1.1 { "OrderId":"2023100622001414411410844851" } ``` -------------------------------- ### 修改默认端口、管理入口和代理入口 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 通过修改config.json文件来更改飞鸟快验系统的默认端口、管理入口和代理入口。请确保端口不被占用,且入口地址不重复且不为空。修改后需要重启程序生效。 ```json { "port": 18888, // 修改为您想要设置的端口号 "Admin": "Admin", // 修改为您想要设置的管理入口地址 "Agent": "Agent" // 修改为您想要设置的代理入口地址 } ``` -------------------------------- ### 配置修改 - 修改默认端口、管理入口、代理入口 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 用户可以通过修改 `config.json` 文件来更改项目的默认端口、管理入口和代理入口。请确保新端口未被占用,并且管理入口与代理入口不相同且不为空。 ```APIDOC ## 修改默认端口18888或管理入口Admin或代理入口Agent 修改目录下config.json文件内 `port`后面的数字为您想要设置的端口号,请确保端口不会被占用 `管理入口`后面的为您想要设置的入口地址,请确保入口和代理入口不同且不为空`1.0.355+` `代理入口`后面的为您想要设置的入口地址,请确保入口和管理入口不同且不为空`1.0.355+` ,重启程序项目 后生效 ``` -------------------------------- ### Task Pool Get Type Status Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This is an example of an HTTP POST request to get the status of task types from the task pool. It requires an application ID and a JSON body specifying the API call, timestamp, and status code. ```http POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "TaskPoolGetTypeStatus", "Time": 1688551155, "Status": 13013 } ``` -------------------------------- ### Task Pool: Get Task Processing Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This example shows a POST request to retrieve tasks for processing. It specifies the maximum number of tasks to get (GetTaskNumber) and an array of task type IDs (GetTaskTypeId) to fetch. It is recommended to process tasks on the server side for security. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "TaskPoolGetTask", "GetTaskNumber": 3, "GetTaskTypeId": [1,2], "Time": 1688551155, "Status": 13013 } ``` -------------------------------- ### 重置管理员密码 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 通过直接修改数据库中的管理员密码来重置。使用宝塔面板管理数据库,将`db_Admin`表中的`PassWord`字段修改为指定的MD5哈希值(`21232f297a57a5a743894a0e4a801fc3`)即可使用`admin`登录。 ```sql UPDATE db_Admin SET PassWord = '21232f297a57a5a743894a0e4a801fc3' WHERE Username = 'admin'; ``` -------------------------------- ### 更换IP数据库 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 说明当软件目录下存在 `qqwry.dat` 文件时,将使用该文件作为IP数据库;否则,将使用内置的IP数据库文件。 ```APIDOC ## # 更换ip数据库 软件目录下 存在`qqwry.dat` 则载入该ip数据库文件,否则使用内置ip数据库文件 ``` -------------------------------- ### POST /Api - GetToken Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Initializes the API connection by obtaining a token. This token is required for all subsequent requests. ```APIDOC ## POST /Api - GetToken ### Description Initializes the API connection by obtaining a token. This token is required for all subsequent requests. ### Method POST ### Endpoint `/Api` ### Parameters #### Query Parameters - **AppId** (int) - Required - Application AppId #### Request Body - **Api** (string) - Required - Fixed interface name: "GetToken" - **Time** (int) - Required - 10-digit current timestamp - **Status** (int) - Required - Success code, locally generated random integer > 10000. The response will return the same code upon success. ### Request Example ```http POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 Token: { "Api": "GetToken", "Time": 1688007301, "Status": 84661 } ``` ### Response #### Success Response (200) - **Status** (int) - Response status code. For successful operations, it matches the submitted Status. For failures, refer to the status code list. - **Msg** (string) - Prompt message for the response status code. - **Time** (int) - 10-digit server current timestamp, can be used for packet time validation. - **Data** (Object) - Interface return information. - **Token** (string) - Token identifier. Required in the header for all subsequent requests. Recommended to save locally. Used for remote logout. - **CryptoKeyAes** (string) - Returned only for RSA mixed encryption. Non-mandatory RSA packets use this AES key for communication encryption. - **IP** (string) - Client IP displayed by the server. #### Response Example ```json { "Data": { "Token": "ALYVZWFRDF7ED72VLZMU2Q8CEHFFUKJP", "CryptoKeyAes": "APfsSNcyziMBa36CTRcEZGbk", "IP": "127.0.0.1" }, "Time": 1688007301, "Status": 84661, "Msg": "" } ``` ``` -------------------------------- ### Get Pay Card List Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example HTTP POST request to retrieve a list of available pay cards. Requires AppId in the URL and specific parameters in the JSON body. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "GetPayKaList", "Time": 1688007304, "Status": 87701 } ``` -------------------------------- ### 全局变量 - $用户在线信息 Source: https://www.fnkuaiyan.cn/PublicJs/%E5%85%AC%E5%85%B1%E5%87%BD%E6%95%B0Api 用于获取用户在线信息,包括用户名、Key、状态、Tab和Uid。此变量仅可读取,写入无效。 ```APIDOC ## 全局变量 - $用户在线信息 ### Description 用于获取用户在线信息,包括用户名、Key、状态、Tab和Uid。此变量仅可读取,写入无效。 ### Method N/A (Accessed within JavaScript hooks) ### Endpoint N/A ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example ```javascript function 获取用户在线信息(形参) { // js内使用方式,仅可读取,写入无效 $用户在线信息.User // aaaaaa 用户名 $用户在线信息.Key // aaaaaa 用户的绑定信息 $用户在线信息.Status // 1 用户状态,1 正常 2 冻结 $用户在线信息.Tab // 用户动态标记, $用户在线信息.Uid // 用户Uid,账号的id,卡号登录的就是卡号的id return $用户在线信息 /* 返回对象会转JSON文本 { "Key": "aaaaaa", "Status": 1, "Tab": "AMD Ryzen 7 6800H with Radeon Graphics |178BFBFF00A40F41", "Uid": 21, "User": "aaaaaa" } */ } ``` ``` -------------------------------- ### Get Purchased Card List Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example HTTP POST request to retrieve a list of recently purchased card numbers. The 'Number' parameter specifies how many recent cards to fetch. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "GetPurchasedKaList", "Number": 18, "Time": 1688007304, "Status": 87701 } ``` -------------------------------- ### Get Purchased Card List Response Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example JSON response for retrieving a list of purchased card numbers. Each card object contains details like Id, Money, Name, usage counts (Num, NumMax), and status. ```JSON { "Data": [ { "AppId": 10001, "Id": 358, "KaClassId": 18, "KaClassName": "天卡", "Money": 3, "Name": "1VBC4t1cQOf606QuTqQtGBrLV", "Num": 0, "NumMax": 1, "RegisterTime": 1688536722, "Status": 1 }, { "AppId": 10001, "Id": 332, "KaClassId": 18, "KaClassName": "天卡", "Money": 3, "Name": "1KBzZF7YXtzHf6pDE9Qv6ecCZ", "Num": 1, "NumMax": 1, "RegisterTime": 1684564559, "Status": 1 }, { "AppId": 10001, "Id": 331, "KaClassId": 18, "KaClassName": "天卡", "Money": 3, "Name": "1GRAGpGtuotDYhwZCecqR8FHH", "Num": 1, "NumMax": 1, "RegisterTime": 1684564211, "Status": 1 } ], "Time": 1688537141, "Status": 70701, "Msg": "" } ``` -------------------------------- ### Create and Query Tasks with $api_任务池_任务创建 and $api_任务池_任务查询 Source: https://www.fnkuaiyan.cn/PublicJs/%E5%85%AC%E5%85%B1%E5%87%BD%E6%95%B0Api This function demonstrates creating a task using $api_任务池_任务创建 and then querying its status and result using $api_任务池_任务查询. It includes a loop to poll for task completion and handles success or failure scenarios. ```javascript function 任务池创建查询例子(形参) { let 任务类型ID = 1 let 结果 = $api_任务池_任务创建($用户在线信息, 任务类型ID, JSON形参文本) //{"IsOk":true,"Err":"","Data":{"TaskUuid":"1fb701a9-05c5-442a-8bcc-34bda07050ae"}} if (结果.IsOk) { let 局_任务对象 = 结果.Data let 任务结果 for (let i = 0; i < 3; i++) { $程序_延时(5000); // 等待1秒 任务结果 = $api_任务池_任务查询(局_任务对象.TaskUuid) if (任务结果.Data.Status !== 1 && 任务结果.Data.Status !== 2) { //不是刚创建, 也不是处理中,跳出循环 break } } //{"IsOk":true,"Err":"","Data":{"ReturnData":"","Status":1,"TimeEnd":0,"TimeStart":1695016978}} if (任务结果.Data.Status === 3) { // 如果是成功,直接返回 return { Code: 1, Msg: "ok", recognition: 任务结果.Data.ReturnData, } } } return { Code: -1, Msg: "失败", } } const js对象_通用返回 = { IsOk: false, Err: "", Data: {} }; ``` -------------------------------- ### Get Cloud Storage Upload Token Request (POST) Source: https://www.fnkuaiyan.cn/WebApi/WebApi This POST request example is used to obtain an upload token for cloud storage. The 'Path' for the file is optionally provided in the request body. ```http POST http://127.0.0.1:18888/WebApi/CloudStorage/GetUploadToken HTTP/1.1 { "Path":"10001/1.apk" } ``` -------------------------------- ### Get App Info API Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Retrieves basic information about the application. ```APIDOC ## POST /Api ### Description Retrieves basic application information, such as dynamic application names. Available from version 1.0.42+. ### Method POST ### Endpoint /Api?AppId={AppId} #### Path Parameters - **AppId** (integer) - Required - Application AppId #### Query Parameters - **Token** (string) - Required - Obtained from the `Get Token` endpoint. #### Request Body - **Api** (string) - Required - Fixed API name: "GetAppInfo" - **Time** (integer) - Required - 10-digit current timestamp. - **Status** (integer) - Required - Success code, a locally generated random integer greater than 10000. The same code will be returned on successful response. ### Request Example ```json { "Api": "GetAppInfo", "Time": 1688007304, "Status": 78453 } ``` ### Response #### Success Response (200) - **Data** (object) - Interface return information. (Specific fields depend on application implementation). - **Time** (integer) - 10-digit server current timestamp. - **Status** (integer) - Response status code. For successful operations, it's the same as the submitted Status; for failures, refer to the status code list. - **Msg** (string) - Response status code prompt message. #### Response Example (Response structure may vary based on application details.) ```json { "Data": { "AppName": "Example App", "Version": "1.0.42", "Description": "This is an example application." }, "Time": 1688118575, "Status": 72085, "Msg": "" } ``` ``` -------------------------------- ### Get Cloud Storage External Link Request (POST) Source: https://www.fnkuaiyan.cn/WebApi/WebApi This POST request example retrieves an external link for cloud storage. The 'Path' and an optional 'LongTime' for link validity can be specified in the request body. ```http POST http://127.0.0.1:18888/WebApi/CloudStorage/GetUploadToken HTTP/1.1 { "Path":"10001/1.apk" "LongTime":86400 } ``` -------------------------------- ### User Login API Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Handles user authentication and login. ```APIDOC ## POST /Api ### Description Authenticates a user or logs them in using their credentials. ### Method POST ### Endpoint /Api?AppId={AppId} #### Path Parameters - **AppId** (integer) - Required - Application AppId #### Query Parameters - **Token** (string) - Required - Obtained from the `Get Token` endpoint. #### Request Body - **Api** (string) - Required - Fixed API name: "UserLogin" - **UserOrKa** (string) - Required - Username or card number - **PassWord** (string) - Required - Password. Can be empty for card number mode. - **Key** (string) - Required - Binding information for server verification. If the server binding is empty, this value is used. - **Tab** (string) - Required - Dynamic marker displayed in the online list, can show simple user information and can be modified at any time. - **AppVer** (string) - Required - Current software version. The server will check if it's a valid version; login is prohibited for invalid versions. - **Time** (integer) - Required - 10-digit current timestamp. - **Status** (integer) - Required - Success code, a locally generated random integer greater than 10000. The same code will be returned on successful response. ### Request Example ```json { "Api": "UserLogin", "UserOrKa": "aaaaaa", "PassWord": "ssssss", "Key": "0B4E7A0E5FE84AD35FB5F95B9CEEAC79", "Tab": "暂时没有动态标记", "AppVer": "1.0.2", "Time": 1688007304, "Status": 78453 } ``` ### Response #### Success Response (200) - **Data** (object) - Interface return information. - **User** (string) - Account or card number. - **Key** (string) - Binding information. - **LoginIp** (string) - Login IP address. - **LoginTime** (integer) - Login timestamp. - **OutUser** (integer) - Number of other online users kicked out during this login. - **RegisterTime** (integer) - Registration timestamp. - **UserClassMark** (integer) - User type code. - **UserClassName** (string) - User type name. - **VipNumber** (float64) - User points in this application. - **VipTime** (float64) - Membership expiration timestamp. - **NewAppUser** (boolean) - Indicates if this is the first login for a new user (added in version 1.0.123). - **Time** (integer) - 10-digit server current timestamp. - **Status** (integer) - Response status code. For successful operations, it's the same as the submitted Status; for failures, refer to the status code list. - **Msg** (string) - Response status code prompt message. #### Response Example ```json { "Data": { "User": "aaaaaa", "Key": "aaaaaa", "LoginIp": "127.0.0.1", "LoginTime": 1688007304, "OutUser": 0, "RegisterTime": 1683349292, "UserClassMark": 2, "UserClassName": "Vip2", "VipNumber": 115.78, "VipTime": 1715438220, "NewAppUser": false }, "Time": 1688007304, "Status": 78453, "Msg": "" } ``` ``` -------------------------------- ### Task Pool: Get Task List Response Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This is an example of a successful response when requesting a list of tasks. The Data object contains a 'List' of tasks, each with details like uuid, TimeStart, TimeEnd, Tid, and status. It also includes the total 'Count' of tasks. ```JSON { "Data": { "List": [ { "ReturnAppId": 0, "ReturnData": "", "ReturnUid": 0, "Status": 1, "SubmitAppId": 10001, "SubmitData": "{}", "SubmitUid": 8, "Tid": 9, "TimeEnd": 0, "TimeStart": 1737356854, "uuid": "92aadc5d-a75b-43b7-9bd5-e368bf3118e1" }, { "ReturnAppId": 0, "ReturnData": "", "ReturnUid": 0, "Status": 1, "SubmitAppId": 10001, "SubmitData": "{}", "SubmitUid": 8, "Tid": 9, "TimeEnd": 0, "TimeStart": 1737357467, "uuid": "95fc57fa-efbe-42e3-8454-c2dbfd72c53f" } ], "Count": 2 }, "Time": 1688551155, "Status": 13013, "Msg": "" } ``` -------------------------------- ### 清除管理员后台Host限制 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 通过修改`db_Setting`数据表中的`管理员后台Host`键值来清除Host限制。在宝塔面板中找到该数据表,清空对应的值,然后重启go项目。 ```sql UPDATE db_Setting SET Value = '' WHERE SettingKey = '管理员后台Host'; ``` -------------------------------- ### 服务器迁移指南 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 详细介绍了如何在迁移服务器时,复制 `config.json` 文件、数据库配置(名称、用户名、密码)、云函数文件夹,以及如何导出和导入数据库数据。 ```APIDOC ## 迁移服务器 新服务器安装好后,go项目停止服务, 旧服务器赋值config.json文件内容到新服务器config.json文件内 如果数据库名称密码相同,直接用即可, 如果不同, 需要在配置内修改`mysql.dbname`(数据库名称),`mysql.username`(用户名),`mysql.password`(数据库密码), 就服务器软件目录下的`云函数`文件夹也复制到新服务器内 使用宝塔导出旧服务器数据库数据,下载到本地,上传到新服务器,然后导入到新服务器数据库内, `所有数据都在数据库和config.json内,迁移服务器实际就是移动这两个数据` go项目重新启动飞鸟快验 域名解析到新服务器即可 ok完成 ``` -------------------------------- ### Purchase Credits Response Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This JSON object shows a successful response from the PayMoneyToVipNumber API, detailing the amount of credits added. ```JSON { "Data": { "AddVipNumber": 1.35 }, "Time": 1688118575, "Status": 87701, "Msg": "" } ``` -------------------------------- ### 添加自定义在线支付同步回调页 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 指导用户如何下载、修改静态支付同步回调结果页,并配置相应的地址和Token,以及在宝塔中添加和上传项目。 ```APIDOC ## # 添加自己的在线支付同步回调页 #### # 效果 #### # 下载静态支付同步回调结果页,并修改配置 简单的同步回调结果页例子.zip 下载例子或去网上下载自己喜欢的模板 然后修改自己的数据 Token 可以在在线支付列表右侧,三个点更多按钮创建 修改html接口为自己的地址和Token #### # 宝塔添加项目 #### # 上传到项目 #### # 配置在线支付同步回调地址 ok 完成,打开地址查询试试吧, ``` -------------------------------- ### Task Pool: Get Data Request Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This example shows a POST request to retrieve data from the task pool. It includes the API endpoint, headers, and a JSON body with parameters like TaskTypeId and TaskUuid. The response indicates success or failure with status codes and returns task-specific data. ```HTTP POST http://127.0.0.1:18888/Api?AppId=10001 HTTP/1.1 { "Api": "TaskPoolGetData", "TaskTypeId":1, "TaskUuid": "1a6547d1-269d-4ca4-b1b8-b86fb6d41287", "Time": 1688551155, "Status": 13013 } ``` -------------------------------- ### POST /Api - Purchase Points with Balance Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Purchases points based on the configured balance-to-point ratio, consuming balance to buy points. ```APIDOC ## POST /Api - Purchase Points with Balance ### Description Purchases points based on the configured balance-to-point ratio, consuming balance to buy points. ### Method POST ### Endpoint http://127.0.0.1:18888/Api?AppId={AppId} ### Parameters #### Path Parameters - **AppId** (integer) - Required - The unique identifier for the application. #### Query Parameters - **Token** (string) - Required - Obtained via the `Get Token` API. #### Request Body - **Api** (string) - Required - Fixed API name, should be "PayMoneyToVipNumber". - **Money** (float64) - Required - The amount of balance to spend on purchasing points. - **Time** (integer) - Required - 10-digit server current timestamp. - **Status** (integer) - Required - A locally generated integer greater than 10000, used for status tracking. The response will return the same code on success. ### Request Example ```json { "Api": "PayMoneyToVipNumber", "Money": 1.35, "Time": 1688007304, "Status": 87701 } ``` ### Response #### Success Response (200) - **Data** (object) - Interface return information. - **AddVipNumber** (float64) - The amount of points or equivalent added. - **Time** (integer) - 10-digit server current timestamp. - **Status** (integer) - Response status code. Success value is the same as the submitted Status; check the status code list for failure details. - **Msg** (string) - Response status code, prompt information. #### Response Example ```json { "Data": { "AddVipNumber": 1.35 }, "Time": 1688118575, "Status": 87701, "Msg": "" } ``` ``` -------------------------------- ### POST /Api PayGetKa Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Creates a card purchase order and returns purchase card information after payment. No login required. ```APIDOC ## POST /Api PayGetKa ### Description Creates a card purchase order and returns purchase card information after payment. No login required. ### Method POST ### Endpoint http://127.0.0.1:18888/Api?AppId=10001 ### Parameters #### Path Parameters - **AppId** (int) - Required - Application AppId #### Header Parameters - **Token** (string) - Required - Obtained via the 'Get Token' interface #### Request Body - **Api** (string) - Required - Fixed interface name - **KaClassId** (int) - Required - ID of the card class to purchase - **PayType** (string) - Required - Payment channel (e.g., "Alipay PC", "WeChat Pay", "Xiao Ding Dang"). More options available in System Management -> System Settings -> Online Payment Settings. - **Time** (int) - Required - 10-digit server current timestamp - **Status** (int) - Required - Success code, locally generated random integer > 10000, returns the same code on success ### Request Example ```json { "Api": "PayGetKa", "KaClassId":3, "PayType": "Xiao Ding Dang", "Time": 1688551155, "Status": 13013 } ``` ### Response #### Success Response (200) - **Status** (int) - Response status code, operation success value is the same as the submitted Status, check the status code list for specific failures. - **msg** (string) - Response status code, prompt information. - **Time** (int) - 10-digit server current timestamp, can be used to determine packet time. - **Data** (Object) - Data content may vary depending on the payment channel. - **OrderId** (string) - Local balance top-up order ID, used to query payment results. - **PayURL** (string) - If the payment type requires web payment (e.g., Alipay PC), this is the payment link; otherwise, it's an empty string. - **PayQRCode** (string) - If the payment type requires QR code payment (e.g., WeChat Pay, Alipay Face-to-Face Payment), this is the raw QR code text; otherwise, it's an empty string. - **PayQRCodePNG** (string) - If the payment type requires QR code payment (e.g., WeChat Pay, Alipay Face-to-Face Payment), this is the base64 encoded QR code image; otherwise, it's an empty string. #### Response Example ```json { "Data": { "OrderId": "202307051333100001", "PayURL": "https://openapi.alipay.com/gateway.do?app_id=202.....", "PayQRCode": "wx://adadhfhjansdkaj", "PayQRCodePNG": "base64tupkladlwnlnadwda" }, "Time": 1688535190, "Status": 13013, "Msg": "" } ``` ``` -------------------------------- ### Get Dynamic Tag Response Example Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api This JSON object shows a successful response from the GetTab API, containing the dynamic tag data under the 'Data' field. ```JSON { "Data": { "Tab": "test测试中英文" }, "Time": 1688118575, "Status": 87701, "Msg": "" } ``` -------------------------------- ### Task Pool: Get Tasks for Processing Source: https://www.fnkuaiyan.cn/WebApi/WebApi Fetches a batch of tasks from the task pool for processing. Requires specifying the number of tasks and an array of task type IDs. Returns a list of tasks, each with a unique UUID, type ID, start time, and submission data. ```http POST http://127.0.0.1:18888/WebApi/TaskPoolGetTask HTTP/1.1 { "GetTaskNumber": 5, "GetTaskTypeId": [1, 2, 3] } ``` -------------------------------- ### Get App Home URL API Response Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example of a successful response from the GetAppHomeUrl API. The Data object contains the AppHomeUrl parameter, which is the URL of the application's home page. ```json { "Data": { "AppHomeUrl": "www.baidu.com" }, "Time": 1688118839, "Status": 87701, "Msg": "" } ``` -------------------------------- ### 处理一键升级后项目显示已停止 Source: https://www.fnkuaiyan.cn/%E6%8C%87%E5%8D%97/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98 解释了一键升级后项目显示停止但实际运行的原因(文件名改变),以及如何通过管理后台的监控页来退出系统进程。 ```APIDOC ## 一键升级后项目显示已停止,但是实际后台在运行怎么处理 一键升级后项目显示已停止,但是实际后台在运行是因为一键升级后项目文件名已改变,但是宝塔项目的文件名没有改变,所以宝塔项目认为项目已停止, 此时想要停止系统,可登录管理员后台`控制面板`->`监控页`->`运行环境`->`系统`右侧有个关闭按钮,点击即可退出系统进程结束飞鸟快验系统进程, ``` -------------------------------- ### Get App Version API Response Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Example of a successful response from the GetAppVersion API. It returns a Data object containing IsUpdate, NewVersion, and Version information. The Status code indicates success. ```json { "Data": { "IsUpdate": true, "NewVersion": "1.1.5", "Version": 1.1 }, "Time": 1688128499, "Status": 72373, "Msg": "" } ``` -------------------------------- ### POST /Api - Set Dynamic Tag Source: https://www.fnkuaiyan.cn/%E7%94%A8%E6%88%B7Api/%E7%94%A8%E6%88%B7Api Allows dynamic writing of information to the online list, such as user environment status, for easier viewing in the online list. ```APIDOC ## POST /Api - Set Dynamic Tag ### Description Allows dynamic writing of information to the online list, such as user environment status, for easier viewing in the online list. ### Method POST ### Endpoint http://127.0.0.1:18888/Api?AppId={AppId} ### Parameters #### Path Parameters - **AppId** (integer) - Required - The unique identifier for the application. #### Query Parameters - **Token** (string) - Required - Obtained via the `Get Token` API. #### Request Body - **Api** (string) - Required - Fixed API name, should be "SetTab". - **Tab** (string) - Required - The new dynamic tag content for the online list. - **Time** (integer) - Required - 10-digit server current timestamp. - **Status** (integer) - Required - A locally generated integer greater than 10000, used for status tracking. The response will return the same code on success. ### Request Example ```json { "Api": "SetTab", "Tab": "test testing Chinese and English", "Time": 1688007304, "Status": 87701 } ``` ### Response #### Success Response (200) - **Time** (integer) - 10-digit server current timestamp. - **Status** (integer) - Response status code. Success value is the same as the submitted Status; check the status code list for failure details. - **Msg** (string) - Response status code, prompt information. #### Response Example ```json { "Time": 1688118575, "Status": 87701, "Msg": "" } ``` ```