警告!請謹慎使用。 如果您在中介軟體管道中看到任何異常或奇怪的行為,並且正在使用以下任何一種行為。刪除它們,然後重試!
當在Startup.cs中配置Ocelot的時候,可以新增或覆蓋中介軟體。如下所示:
var configuration = new OcelotPipelineConfiguration
{
PreErrorResponderMiddleware = async (ctx, next) =>
{
await next.Invoke();
}
app.UseOcelot(configuration);
};
在上面的例子中,提供的函式將在第一個Ocelot中介軟體之前執行。 這允許使用者在Ocelot管道執行之前和之後提供他們想要的任何行為。 這意味著你可以打破一切,你開心就好!
使用者可以針對以下內容設定功能。
- PreErrorResponderMiddleware - 上面已經解釋過了.
- PreAuthenticationMiddleware - 這個允許使用者執行預認證邏輯,然後再呼叫 Ocelot的認證中介軟體。
- AuthenticationMiddleware - 可以重寫Ocelot的認證中介軟體。
- PreAuthorisationMiddleware - 這個允許使用者執行預授權邏輯,然後再呼叫 Ocelot的授權中介軟體。
- AuthorisationMiddleware - 可以重寫Ocelot的授權中介軟體。
- PreQueryStringBuilderMiddleware - 這允許使用者在傳遞給Ocelot請求建立器之前在http請求上處理查詢字串。
很明顯,您只能在呼叫app.UseOcelot()之前新增中介軟體,而不能在它之後,因為Ocelot不會呼叫下一個中介軟體。