当我在本地开发(.NET 6.0-MVC)时,我有以下基本URL:
https://localhost:7221/<controller>
但是,当我发布它时,我有以下基本URL:
https://<server name>/<application>/<controller>
我不知道如何在当地以同样的方式得到它。
https://localhost:7221/<application>/<controller>
如果我用类似的URL调用AJAX请求,那么只在其中一个环境中工作的AJAX请求会有问题:
url: "/Ajax/..."
发布于 2022-03-13 20:30:07
您可以使用Url.Action
助手方法,它为指定的操作名称和路由值为操作方法生成一个完全限定的URL。因此,在您的示例中,您可以在AJAX
url调用中使用它,如下所示:
url: '@Url.Action("ActionMethod", "ControllerName")'
注意:此方法只能在您的.cshtml
文件中访问,并且不会在纯.js
文件中接受。如果希望.js
访问这个变量,那么需要在.cshtml
文件中全局定义它,然后访问它-- .js
文件。
发布于 2022-03-10 23:56:24
您的意思是在URL中添加项目名称吗?
如果是,请在Program.cs中在路由中添加项目名称。
app.MapControllerRoute(
name: "default",
pattern: "application/{controller=Home}/{action=Index}/{id?}");
结果:
如果我用类似的
:“/ AJAX /.”调用Ajax请求,那么Ajax请求将只在其中一个环境中工作,我遇到了问题。
注意,在使用ajax时,您也需要在url中添加项目名称。
https://stackoverflow.com/questions/71426754
复制相似问题