Skip to content

Commit 8bac3c9

Browse files
committed
update readme
1 parent 9b8d24f commit 8bac3c9

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
| WebApiClientCore | 基础包 | [![NuGet](https://buildstats.info/nuget/WebApiClientCore)](https://www.nuget.org/packages/WebApiClientCore) |
1010
| WebApiClientCore.Extensions.OAuths | OAuth扩展包 | [![NuGet](https://buildstats.info/nuget/WebApiClientCore.Extensions.OAuths)](https://www.nuget.org/packages/WebApiClientCore.Extensions.OAuths) |
1111
| WebApiClientCore.Extensions.NewtonsoftJson | Json.Net扩展包 | [![NuGet](https://buildstats.info/nuget/WebApiClientCore.Extensions.NewtonsoftJson)](https://www.nuget.org/packages/WebApiClientCore.Extensions.NewtonsoftJson) |
12+
| WebApiClientCore.Extensions.JsonRpc | JsonRpc调用扩展包 | [![NuGet](https://buildstats.info/nuget/WebApiClientCore.Extensions.JsonRpc)](https://www.nuget.org/packages/WebApiClientCore.Extensions.JsonRpc) |
13+
| WebApiClientCore.OpenApi.SourceGenerator | 将本地或远程OpenApi文档解析生成WebApiClientCore接口代码的dotnet tool | [![NuGet](https://buildstats.info/nuget/WebApiClientCore.OpenApi.SourceGenerator)](https://www.nuget.org/packages/WebApiClientCore.OpenApi.SourceGenerator) |
1214

1315
### 如何使用
1416

@@ -987,3 +989,29 @@ public interface IUserApi
987989
Task PostAsync([JsonNetContent] User user);
988990
}
989991
```
992+
993+
994+
### JsonRpc调用
995+
在极少数场景中,开发者可能遇到JsonRpc调用的接口,由于该协议不是很流行,WebApiClientCore将该功能的支持作为WebApiClientCore.Extensions.JsonRpc扩展包提供。使用[JsonRpcMethod]修饰Rpc方法,使用[JsonRpcParam]修饰Rpc参数
996+
即可。
997+
998+
#### JsonRpc声明
999+
```c#
1000+
[HttpHost("http://localhost:5000/jsonrpc")]
1001+
public interface IUserApi
1002+
{
1003+
[JsonRpcMethod("add")]
1004+
ITask<JsonRpcResult<User>> AddAsync([JsonRpcParam] string name, [JsonRpcParam] int age, CancellationToken token = default);
1005+
}
1006+
```
1007+
1008+
#### JsonRpc数据包
1009+
```
1010+
POST /jsonrpc HTTP/1.1
1011+
Host: localhost:5000
1012+
User-Agent: WebApiClientCore/1.0.6.0
1013+
Accept: application/json; q=0.01, application/xml; q=0.01
1014+
Content-Type: application/json-rpc
1015+
1016+
{"jsonrpc":"2.0","method":"add","params":["laojiu",18],"id":1}
1017+
```

0 commit comments

Comments
 (0)