【发布时间】:2020-02-12 15:51:09
【问题描述】:
我正在制作一个 MVC C# Web 应用程序,我开始想知道您是否可以打开其他需要参数才能运行的页面,而无需通过 URL 实际发送它们,这是不安全的,并且可能导致某些用户搞砸另一个数据库的注册表。
我的问题是,我从来没有做过这样的事情,而且我找不到任何做这样事情的代码示例。该项目使用 C# 和 JS 运行,我尝试过的主要内容包括:
-使用 Ajax 这样做:
首先我有一个调用函数的按钮:
<a href="@Url.Action("actionEditStuff", "ControllerName")">Link Text</a>|
function openHorario(id, id_schedule, id_tool) {
alert(oid, id_schedule, id_tool);
$.ajax({
type: 'POST',
url: '/Schedules/actionEditStuff',
data: {
id: id,
id_schedule: id_schedule,
id_tool: id_tool
},
async: 'false',
success: function (data) {
//???
}
});
}
我知道有一种方法可以在 Ajax 返回成功的情况下转到新页面,但是……这也需要您通过 URL 发送参数。
显然,这不起作用,因为控制器中的操作是返回视图,而不是页面。所以...我意识到我的想法不是很聪明,并转移到其他地方:链接,但最终总是不得不通过 URL 发送参数可见。
有什么方法可以以适当、干净的方式做到这一点?
谢谢!
【问题讨论】:
-
返回html或者View onsuccess()怎么样?
标签: javascript c# asp.net-mvc routes