繁体   English   中英

在没有 POST/页面重新加载的情况下从 javascript 调用网络服务器上的方法

[英]Call methods on webserver from javascript without POST/page reloading

显然我未能清楚地传达我的问题,所以我正在重写以再试一次。

我来自前端 HTML/CSS/JS 设计师环境。 因此,我非常习惯于在没有任何服务器端功能的情况下编写我的(有时是高度风格化和交互式的)项目来“构建/配置/组装页面”(由 SCORM LMS 提供的基于 Web 的交互式 CBT)。 因此,我无法将我的工作流转换为使我能够利用 asp.net 服务器端功能的工作流。

我使用大量 JavaScript 来响应用户交互、处理输入以及在需要时操纵页面内容。

我不知道的是我如何能够获取几乎 100% 的客户端内容并添加对偶尔调用服务器的支持,而不必重建整个站点。

WinForms 似乎想使用 form runat="server" 和标签来处理导致页面刷新和可维护的 HTML 输出较少的所有内容。

WebApp MVC(razor)似乎需要我用更多的服务器端声明来重建所有内容,并混淆(至少对我而言)我已经使用了好几年的相当简单的架构(UI | Controller | Logic)。

我似乎发现解决我的需求的最接近的方法是 AJAX 和 JSON 调用使用运行时编译的代码隐藏 webmethods。 我过去曾经在 Dreamweaver/notepad++ 中使用过这个(当时没有 Visual Studio 访问权限),但似乎使用的每个服务器方法都需要是公共静态函数,即使从原始 [webmethod] 服务器方法中间接引用.

我之前用 SignalR 和 Owin 进行过一个实验,但对于我偶尔的需求来说似乎有点过分,尽管它在我的实验中表现为客户端和服务器之间可用的信使服务。

我的问题是,根据我以前的经验,我只是不知道要使用哪种技术堆栈。

帖子和回复这里总结了一下似乎是为那些像我一样是从前端至前端和后端发展过渡是症结所在。

我承认堆栈溢出很可能不是最好的地方,因为我很可能需要更多的指导来指导如何转换而不是如何使用特定技术。

如果您使用的是 WebForms,那么是的,您可以使用 [WebMethod] 装饰公共静态方法。 WebApi 是一种更好的方法,这正是它被构建的原因。 但是,如果您主要在 WebForms 上工作,这对您来说可能有点学习曲线。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM