gpt4 book ai didi

asp.net - 将 jQuery AJAX 与 .NET 集成

转载 作者:行者123 更新时间:2023-12-02 11:46:35 25 4
gpt4 key购买 nike

我想从 jQuery 向我的服务器发出 ajax 调用。基本上,我希望请求以 POST 形式发送,内容类型为 x-www-form-urlencoded 以及相应的参数(parameter1=X&paramter2=Y&parameter3=Z)。我希望响应为 JSON。

服务器环境是.NET。我一直在尝试以下三种方法,但未能使其中一种完全正常工作。

ASPX - 使用 aspx 处理并返回 JSON,我可以让它工作,但我需要自己序列化 JSON。这是可能的,但我希望有更方便的东西。另外,如果我错了,请纠正我,但我想 aspx 页面会涉及很多额外的开销,因为它们不仅仅是执行方法并返回简单的 JSON。

ASMX 和 WCF - 使用 asmx 和 WCF,我可以让它返回 JSON,但前提是我在请求中发送 JSON。

用于此请求/响应类型的最佳服务器端“框架”是什么? .aspx、.asmx 还是 WCF?既然我至少能够让 aspx 来完成此任务,那么这是否是一个合适的方法?

我见过其他产品通过 Web 服务公开 API,并使用名称/值查询字符串请求格式和 JSON 响应类型,但这在 .NET 中似乎很难完成。

最佳答案

你说得对,ASPX 页面会带来额外的开销。即使您根本不使用 WebForms 框架,对 ASPX 页面的请求仍然必须在整个页面生命周期中进行过滤。

如果您更喜欢这种低级方法,即读取 QueryString 参数并使用手动序列化的 JSON 进行响应,那么ASHX HttpHandler 可能是最好的解决方案。

就我个人而言,我更喜欢 ASMX 服务。发送 JSON 参数并不是很困难(一旦开始发送嵌套对象或集合,您可能最终会这样做,这通过简单的键/值对会变得一团糟),并且最好避免不必要的仪式在每个请求期间进行反序列化和序列化。

人们会告诉您 WCF 是正确的解决方案,因为它较新,但当您使用 jQuery 时,.NET 4 的 WCF 目前不太适合。它在处理 DateTime 和 Enum 类型时不太灵活,并且具有笨拙的 Dictionary 序列化功能。 WCF新品WCF Web Api不过,如果您想尝试一些超前的东西,就可以解决这些问题。

关于asp.net - 将 jQuery AJAX 与 .NET 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6959550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com