Compare commits

..
2 Commits
Author SHA1 Message Date
xrain be9092bf3c fix rpc client error 2023-10-30 03:45:15 +08:00
xrain 345aaa261e fix readme 2023-10-23 17:42:37 +08:00
3 changed files with 8 additions and 7 deletions
+2 -1
View File
@@ -1,4 +1,4 @@
# YYApi 基于Asp.net Core 3/5的一个基础辅助包 # SimApi 基于.Net的一个基础辅助包
[![PublishNugetPackage](https://github.com/simcu/simapi-net/actions/workflows/nuget-publish.yml/badge.svg)](https://github.com/simcu/simapi-net/actions/workflows/nuget-publish.yml) [![PublishNugetPackage](https://github.com/simcu/simapi-net/actions/workflows/nuget-publish.yml/badge.svg)](https://github.com/simcu/simapi-net/actions/workflows/nuget-publish.yml)
### 包含了以下组件: ### 包含了以下组件:
@@ -52,3 +52,4 @@ services.AddSimApi(options =>
options.SimApiStorageOptions = Configuration.GetSection("S3").Get<SimApiStorageOptions>(); options.SimApiStorageOptions = Configuration.GetSection("S3").Get<SimApiStorageOptions>();
}); });
``` ```
基于S3的存储,基于RabbitMq的事件RPC调用,自定义Logger格式,自定义响应格式
+4 -5
View File
@@ -36,11 +36,11 @@ public partial class Synapse
RpcClientChannel.BasicConsume(queue, false, "", false, false, null, consumer); RpcClientChannel.BasicConsume(queue, false, "", false, false, null, consumer);
} }
private object FireRpc(string app, string action, object param) private string FireRpc(string app, string action, object param)
{ {
var paramJson = JsonSerializer.Serialize(param, SimApiUtil.JsonOption); var paramJson = JsonSerializer.Serialize(param, SimApiUtil.JsonOption);
var router = $"server.{app}"; var router = $"server.{app}";
SimApiBaseResponse response; string response;
var props = RpcClientChannel.CreateBasicProperties(); var props = RpcClientChannel.CreateBasicProperties();
props.AppId = Options.AppId; props.AppId = Options.AppId;
props.MessageId = Guid.NewGuid().ToString(); props.MessageId = Guid.NewGuid().ToString();
@@ -55,13 +55,12 @@ public partial class Synapse
{ {
if (SimApiUtil.TimestampNow - ts > Options.RpcTimeout) if (SimApiUtil.TimestampNow - ts > Options.RpcTimeout)
{ {
response = new SimApiBaseResponse(502, "timeout"); response = JsonSerializer.Serialize(new SimApiBaseResponse(502, "timeout"), SimApiUtil.JsonOption);
break; break;
} }
if (ResponseCache.TryGetValue(props.MessageId, out var value)) if (ResponseCache.TryGetValue(props.MessageId, out var value))
{ {
response = JsonSerializer.Deserialize<SimApiBaseResponse<object>>( response = Encoding.UTF8.GetString(value);
Encoding.UTF8.GetString(value), SimApiUtil.JsonOption);
ResponseCache.Remove(props.MessageId); ResponseCache.Remove(props.MessageId);
break; break;
} }
+2 -1
View File
@@ -96,7 +96,8 @@ public partial class Synapse
} }
else else
{ {
res = FireRpc(appName, method, param); var data = FireRpc(appName, method, param);
res = JsonSerializer.Deserialize<SimApiBaseResponse<T>>(data, SimApiUtil.JsonOption);
} }
return res as SimApiBaseResponse<T>; return res as SimApiBaseResponse<T>;
} }