forked from sin365/AxibugEmuOnline
单个rom 信息查询 webapi
This commit is contained in:
parent
68f19925d6
commit
68f121df60
@ -34,6 +34,27 @@ namespace AxibugEmuOnline.Client
|
|||||||
callback.Invoke(resp);
|
callback.Invoke(resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private IEnumerator GetNesRomInfo(int RomID, Action<Resp_RomInfo> callback)
|
||||||
|
{
|
||||||
|
UnityWebRequest request = UnityWebRequest.Get($"{WebSiteApi}/RomInfo?PType={PlatformType.Nes}&RomID={RomID}");
|
||||||
|
yield return request.SendWebRequest();
|
||||||
|
|
||||||
|
if (request.result != UnityWebRequest.Result.Success)
|
||||||
|
{
|
||||||
|
callback.Invoke(null);
|
||||||
|
yield break;
|
||||||
|
}
|
||||||
|
|
||||||
|
var resp = JsonUtility.FromJson<Resp_RomInfo>(request.downloadHandler.text);
|
||||||
|
callback.Invoke(resp);
|
||||||
|
}
|
||||||
|
|
||||||
|
enum PlatformType : byte
|
||||||
|
{
|
||||||
|
All = 0,
|
||||||
|
Nes = 1,
|
||||||
|
}
|
||||||
|
|
||||||
enum GameType : byte
|
enum GameType : byte
|
||||||
{
|
{
|
||||||
NONE = 0,
|
NONE = 0,
|
||||||
|
@ -103,6 +103,40 @@ namespace AxibugEmuOnline.Web.Controllers
|
|||||||
return new JsonResult(resp);
|
return new JsonResult(resp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[HttpGet]
|
||||||
|
public JsonResult RomInfo(int Ptype, int RomID)
|
||||||
|
{
|
||||||
|
string searchPattern = $"%{RomInfo}%";
|
||||||
|
Resp_RomInfo resp = new Resp_RomInfo();
|
||||||
|
MySqlConnection conn = Haoyue_SQLPoolManager.DequeueSQLConn("NesRomList");
|
||||||
|
{
|
||||||
|
string query = $"SELECT id,`Name`,GameType,Note,RomUrl,ImgUrl,`Hash` FROM romlist_nes where id = ?romid;";
|
||||||
|
using (var command = new MySqlCommand(query, conn))
|
||||||
|
{
|
||||||
|
// 设置参数值
|
||||||
|
command.Parameters.AddWithValue("?romid", RomID);
|
||||||
|
// 执行查询并处理结果
|
||||||
|
using (var reader = command.ExecuteReader())
|
||||||
|
{
|
||||||
|
while (reader.Read())
|
||||||
|
{
|
||||||
|
resp.id = reader.GetInt32(0);
|
||||||
|
resp.romName = !reader.IsDBNull(1) ? reader.GetString(1) : string.Empty;
|
||||||
|
resp.gType = !reader.IsDBNull(2) ? reader.GetString(2) : string.Empty;
|
||||||
|
resp.desc = !reader.IsDBNull(3) ? reader.GetString(3) : string.Empty;
|
||||||
|
resp.url = !reader.IsDBNull(4) ? reader.GetString(4) : string.Empty;
|
||||||
|
resp.imgUrl = !reader.IsDBNull(5) ? reader.GetString(5) : string.Empty;
|
||||||
|
resp.hash = !reader.IsDBNull(6) ? reader.GetString(6) : string.Empty;
|
||||||
|
resp.stars = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Haoyue_SQLPoolManager.EnqueueSQLConn(conn);
|
||||||
|
}
|
||||||
|
return new JsonResult(resp);
|
||||||
|
}
|
||||||
|
|
||||||
enum PlatformType : byte
|
enum PlatformType : byte
|
||||||
{
|
{
|
||||||
All = 0,
|
All = 0,
|
||||||
|
@ -2,6 +2,24 @@
|
|||||||
|
|
||||||
这里说明,WebApi类的接口
|
这里说明,WebApi类的接口
|
||||||
|
|
||||||
|
|
||||||
|
### 基本通用参数
|
||||||
|
|
||||||
|
```
|
||||||
|
platform 模拟器所在平台
|
||||||
|
[0] 通用
|
||||||
|
[1] PC
|
||||||
|
|
||||||
|
PType Rom所属平台
|
||||||
|
|
||||||
|
enum PlatformType : byte
|
||||||
|
{
|
||||||
|
All = 0,
|
||||||
|
Nes = 1,
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
### 基本信息检查
|
### 基本信息检查
|
||||||
|
|
||||||
```
|
```
|
||||||
@ -120,33 +138,7 @@ Response:
|
|||||||
序列化C#实体类示例
|
序列化C#实体类示例
|
||||||
|
|
||||||
```
|
```
|
||||||
enum PlatformType : byte
|
|
||||||
{
|
|
||||||
All = 0,
|
|
||||||
Nes,
|
|
||||||
}
|
|
||||||
|
|
||||||
enum GameType : byte
|
|
||||||
{
|
|
||||||
NONE = 0,
|
|
||||||
ACT,
|
|
||||||
ARPG,
|
|
||||||
AVG,
|
|
||||||
ETC,
|
|
||||||
FTG,
|
|
||||||
PUZ,
|
|
||||||
RAC,
|
|
||||||
RPG,
|
|
||||||
SLG,
|
|
||||||
SPG,
|
|
||||||
SRPG,
|
|
||||||
STG,
|
|
||||||
TAB,
|
|
||||||
/// <summary>
|
|
||||||
/// 合卡
|
|
||||||
/// </summary>
|
|
||||||
ALLINONE,
|
|
||||||
}
|
|
||||||
|
|
||||||
class Resp_GameList
|
class Resp_GameList
|
||||||
{
|
{
|
||||||
@ -169,3 +161,35 @@ Response:
|
|||||||
public int stars { get; set; }
|
public int stars { get; set; }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### 单个Rom游戏详情
|
||||||
|
|
||||||
|
```
|
||||||
|
{WebHost}/api/RomInfo?PType=<平台枚举(int)>&RomID=<RomID>
|
||||||
|
```
|
||||||
|
|
||||||
|
Request:
|
||||||
|
|
||||||
|
```
|
||||||
|
http://emu.axibug.com/api/RomInfo?PType=1&RomID=5
|
||||||
|
```
|
||||||
|
|
||||||
|
Response:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"orderid": 0,//单个查询就没有排序id了
|
||||||
|
"id": 5,
|
||||||
|
"romName": "1999强手棋",
|
||||||
|
"gType": "TAB",
|
||||||
|
"desc": "以世纪末地球危机为题材的桌棋冒险节目。游戏者要存储宇宙能量帮助地球摆脱各方面危机最多可4人同时进行",
|
||||||
|
"url": "roms/fcrom/1999%20-%20Hore,%20Mitakotoka!%20Seikimatsu%20(J).zip",
|
||||||
|
"imgUrl": "images/fcrom/1999%20-%20Hore,%20Mitakotoka!%20Seikimatsu%20(J).JPG",
|
||||||
|
"hash": "",
|
||||||
|
"stars": 0
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
序列化Class 参照如上 Resp_RomInfo
|
Loading…
Reference in New Issue
Block a user