1.ABP動態代理是根據我們定義的IxxAppService 接口生成的Resutful風格的Http請求實現
2.默認只需要依賴 AbpHttpClientModule 模塊 和你的 xxApplicationContractsModule 應用接口模塊
[DependsOn(new Type[] {typeof (AbpHttpClientModule), typeof (XXApplicationContractsModule)})] public class LibraDataCollectionHttpApiClientModule : AbpModule { public const string RemoteServiceName = "XX.DataCollection"; public override void ConfigureServices(ServiceConfigurationContext context) { context.Services.AddHttpClientProxies(typeof (XXApplicationContractsModule).Assembly, "XX.DataCollection", true, (Action<IHttpClientBuilder>) null); } }
使用直接在客戶端 構造函數注入你的 IxxAppService 接口 就可以使用了
下面介紹如何修改客戶端Http請求超時時間
首先源碼分析
動態代理實現的代碼模塊包為 Volo.Abp.Http.Client
定位到動態實現關鍵類 DynamicHttpProxyInterceptor
找到構建Http請求 關鍵方法
並且找到默認實現類
重新接口 並且替換默認實現即可
接下來處理服務端超時問題
如果是不是在IIS上 IIS 作為反向代理工具 也需要單獨設置超時時間
在Visual Studio中使用IIS Express調試時的設置方法