【问题标题】:ASP MVC (razor) action filter (view/json)ASP MVC (razor) 动作过滤器 (view/json)
【发布时间】:2011-08-04 08:35:12
【问题描述】:
我找到了 MVC API 操作过滤器,它应该自动检查请求是否需要 json 响应,如果需要,自动在 json 中序列化我发送到视图的模型,对吧?!
http://mvcapi.codeplex.com/
我找到了很多示例,但问题是它们都假设请求将通过 Ajax 调用发送,在该调用中我可以清楚地指定它是 json 请求。
我想直接从我的浏览器调用该操作,但我并非没有任何规范,它只是返回视图
如何在请求 json 响应的 url 中指定?
【问题讨论】:
标签:
asp.net-mvc
json
action-filter
【解决方案1】:
我知道你写的那个库,但是没有用过。当我看到它似乎从未在 Codeplex 上通过 Beta 版并且一年多没有更新时,我回避使用它。
除此之外,在所使用的方法中,URL 并不能确定返回的数据类型,而是由 Http Accept Headers 来决定的。这是一种更 RESTful 的返回数据的方法。
您会注意到您在请求部分提供的链接
Accept: application/json, text/javascript, */*
application/json 告诉服务返回 json。您可能会在网上找到其他使用text/json 的示例,它们也应该可以工作,但application/json 是正确的标准。
如果你使用 jQuery,你可以使用 $.ajax 并指定 dataType: 'json' 或者直接使用 $.getJson 方法。