【问题标题】:Can we import .net core API that is published into Azure Web App into APIM我们可以将发布到 Azure Web App 的 .net 核心 API 导入 APIM
【发布时间】:2019-07-21 02:57:22
【问题描述】:

我已经创建了 Web API 并使用 VS 部署到 Azure。 API 在该 Web 应用程序中发布/托管。我想将该 API(Web 应用程序)导入 APIM,但我只看到可供选择的选项是

  1. “逻辑应用”
  2. 'API 应用'和
  3. '功能应用'

Web 应用什么都没有。我们可以将该 Web 应用程序导入 APIM 吗?

【问题讨论】:

    标签: azure api azure-api-management


    【解决方案1】:

    没有。直接不行。但是通过选择空白 API 选项获取 url 并进行配置,或者修改代码并获取 Swagger 文件并导入它。

    【讨论】:

      【解决方案2】:

      第 1 步 - 添加 SWAGGER(开放 API 接口) 第一步是添加 swagger,它是一个开放的 API 接口,可以在 API 管理中导入。为了首先添加 swagger,我们必须在现有应用程序中安装 NuGet 包

      第 2 步 - 编辑 STARTUP 课程以适应我们的应用程序中的 SWAGGER 如果您已将其自定义为不同的名称,请导航到 Startup.cs 或您的 Startup 类,并更改 ConfigureServices 和 Configure 方法以将 Swagger 添加到您的 WebAPI 应用程序,如以下两种方法。

      配置服务:

      public void ConfigureServices(IServiceCollection 服务)
      {
      services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

          // Register the Swagger generator, defining 1 or more Swagger documents             
          services.AddSwaggerGen(c => 
      
      
      
          {                 
              c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });             
              }); 
      
          // Register the Swagger generator, defining 1 or more Swagger documents             
          services.AddSwaggerGen(c =>             
          {                 
              c.SwaggerDoc("MyApi", new Info                 
              {                     
                  Version = "v1",                     
                  Title = "My API",                    
                   Description = "A simple example ASP.NET Core Web API",                     
                   TermsOfService = "None",                     
                   Contact = new Contact                     
                   {                         
                       Name = "mfouad",                        
                        Email = string.Empty,                        
                         Url = ""                     
                         },                    
                          License = new License                    
                           {                         
                               Name = "Use under LICX",                        
                                Url = "https://example.com/license"                     
                                }                
                                 });            
                                  }); 
      } 
      

      并配置:

      public void Configure(IApplicationBuilder app, IHostingEnvironment env)         
              {             
                  if (env.IsDevelopment())             
                  {                 
                      app.UseDeveloperExceptionPage();             
                      }             
                      else            
                       {                 
                           app.UseHsts();            
                            } 
      
                  // Enable middleware to serve generated Swagger as a JSON endpoint.             
                  app.UseSwagger(); 
      
                  // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.),             
                   // specifying the Swagger JSON endpoint.             
                   app.UseSwaggerUI(c =>             
                   {                 
                       c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");             
                       }); 
      
      
                      app.UseHttpsRedirection(); 
                      app.UseMvc(); 
              }
      

      第 3 步 - 在 AZURE 应用服务中发布这些更改

      1. 右键单击项目并选择发布以将新更改添加到应用服务。

      2. 如果不存在应用服务,则选择并存在或创建新的应用服务

      3. 将其发布到应用服务。

      4. 一旦发布,请确保 http://{ YourAppServiceName }.azurewebsites.net/swagger 加载 API 接口页面

      5. 导航到 https://{YourAppServiceName}.azurewebsites.net/swagger/v1/swagger.json

      第 4 步 - 将 API 添加到 API 管理

      1. 导航到 Azure 中的 API 管理资源
      2. 从左侧窗格中选择 API
      3. 点击 OpenAPI
      4. 您将看到一个表格供您填写,您可以下载 将 json 文件传输到本地计算机并使用 swagger 对其进行验证 编辑器工具,如果导入该文件有任何问题,它可以提供 您在上传之前对要修复的项目提出建议。
      5. 按以下形式添加 Swagger.json 端点或文件,然后单击创建。
      6. 将您的 API Endpoint 添加到 API Management 点击设置 功能区并在 Web 服务 URL 字段中添加您的应用程序服务 URL 如下图。
      7. 在 API 管理中通过单击测试中的测试来测试您的 API 功能区并选择其中一个 API 将示例请求发送到 as 根据下图。

      【讨论】:

        猜你喜欢
        • 2020-09-07
        • 2018-10-12
        • 2021-08-21
        • 2019-03-10
        • 2021-07-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多