Ocelot中文文件-中介軟體注入和重寫

loogn發表於2018-05-08

警告!請謹慎使用。 如果您在中介軟體管道中看到任何異常或奇怪的行為,並且正在使用以下任何一種行為。刪除它們,然後重試!

當在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不會呼叫下一個中介軟體。

相關文章