如何在一个asp.net core webapi项目中配置一个长尾词的全局路由方法?

2026-04-01 11:270阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1152个文字,预计阅读时间需要5分钟。

如何在一个asp.net core webapi项目中配置一个长尾词的全局路由方法?

一、前言在开发项目的过程中,我新创建了一个controller,发现vs会直接在controller头添加前缀,例如[Route(api/[controller])],这样在访问接口时,URL会变成http://localhost:8000/api/values。

一、前言

在开发项目的过程中,我新创建了一个controller,发现vs会给我们直接在controller头添加前缀,比如[Route("api/[controller]")],即在访问接口的时候会变成localhost:8000/api/values,但是如果控制器有很多个,或者要进行版本迭代时,我们会发现痛苦的时刻降临了,要一个一个的修改。

如果在这个时候可以进行全局配置前缀那真是福利呀,修改一处即可。为了能达到此目的我们就来运用一下吧。

二、配置

0、在配置前我们先来看看接口的前缀吧。 立图为证

用swagger打开

1、我们需要用到IApplicationModelConvention 这个接口,它是位于Microsoft.AspNetCore.Mvc.ApplicationModels 命令空间下面。

MVC框架有一些约定俗成的东西,这个接口主就是用来定义一些MVC约定的东西。我们就可以通过 Apply方法中的 ApplicationModel 来修改或者添加一些约定,而且MV框架本身在启动的时候会把此接口注入,以便于我们使用。

阅读全文

本文共计1152个文字,预计阅读时间需要5分钟。

如何在一个asp.net core webapi项目中配置一个长尾词的全局路由方法?

一、前言在开发项目的过程中,我新创建了一个controller,发现vs会直接在controller头添加前缀,例如[Route(api/[controller])],这样在访问接口时,URL会变成http://localhost:8000/api/values。

一、前言

在开发项目的过程中,我新创建了一个controller,发现vs会给我们直接在controller头添加前缀,比如[Route("api/[controller]")],即在访问接口的时候会变成localhost:8000/api/values,但是如果控制器有很多个,或者要进行版本迭代时,我们会发现痛苦的时刻降临了,要一个一个的修改。

如果在这个时候可以进行全局配置前缀那真是福利呀,修改一处即可。为了能达到此目的我们就来运用一下吧。

二、配置

0、在配置前我们先来看看接口的前缀吧。 立图为证

用swagger打开

1、我们需要用到IApplicationModelConvention 这个接口,它是位于Microsoft.AspNetCore.Mvc.ApplicationModels 命令空间下面。

MVC框架有一些约定俗成的东西,这个接口主就是用来定义一些MVC约定的东西。我们就可以通过 Apply方法中的 ApplicationModel 来修改或者添加一些约定,而且MV框架本身在启动的时候会把此接口注入,以便于我们使用。

阅读全文