當我運行.NET核心Web API項目,我得到類似如下的URL:http://localhost:5000/api/ ...更改Asp.Net核心的URL「/ API」部分
我怎樣才能改變/ url /部分的網址到別的東西?即 - http://localhost:5000/myservice/ ...
我使用Kestrel作爲我的虛擬主機。
在此先感謝!
當我運行.NET核心Web API項目,我得到類似如下的URL:http://localhost:5000/api/ ...更改Asp.Net核心的URL「/ API」部分
我怎樣才能改變/ url /部分的網址到別的東西?即 - http://localhost:5000/myservice/ ...
我使用Kestrel作爲我的虛擬主機。
在此先感謝!
這取決於你如何進行項目設置。默認情況下,我相信它使用屬性路由。在你的控制器,你應該看到這樣的事情
[Route("api/[controller]")]
public class ValuesController : Controller
{
凡[路線( 「API/[控制器]」)將只需要更改爲[路線( 「爲MyService/[控制器]」)
如果你想這樣做全局你可以這樣做。
app.UseMvc(routes =>
{
routes.MapRoute("default", "myservice/{controller=values}/{action=get}/{id?}");
});
雖然我自己不使用這個,並且它不完全是MS推薦的Web Api。你可以閱讀更多here。
混合路由 MVC應用程序可以混合使用傳統路由和屬性路由。對於爲瀏覽器提供HTML頁面的控制器使用傳統路由,以及爲服務於REST API的控制器使用屬性路由,這是很典型的。
啊,謝謝!我會將其標記爲答案。在相關說明中,是否有辦法在全球範圍內而不是在每個控制器中執行此操作? –
是的,我喜歡屬性路由,因爲我可以控制網址,但你可以做到。讓我編輯答案,以便代碼更清晰。 – Woot
這正是我正在尋找的! –
這應該是Startup.cs中路由配置的一個相當簡單的改變。 – juunas