问题标签 [wcf-web-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1161 浏览

wcf-web-api - WCF Web API Json 格式

我是 MVC 中 WCFweb api WEB 服务的新手我使用 ADO.net 实体框架工作做了一个示例服务它以 XMl 格式返回结果我想要 Json 格式我写了这样的代码。

请帮助我如何获得 Json 格式的结果?

0 投票
1 回答
1363 浏览

jsonp - 使用 JSONP 将复杂对象发送到 WCF Web API

感谢Alex Zeitler 的文章,我的 WCF Web API 服务接受 JSONP 请求。

这对于简单的请求非常有效,但我有一个问题。

我需要能够访问的功能之一是搜索功能,该功能目前通过 http 帖子获取复杂对象。显然我不能通过 JSONP 发布,所以我试图考虑如何将其转换为获取请求。

现有功能如下所示:

传入的请求对象定义如下:

棘手的部分是元数据参数的数量未知,并且名称和值事先不知道。

我尝试简单地将对象序列化为字符串并将其传递,但​​服务抛出 400 错误请求(从客户端检测到潜在危险的 Request.Path 值 (:)。)

有没有人有什么好主意?

编辑:肮脏的黑客警报!

好的,我有一个工作功能,但我不喜欢它。必须有一种方法可以实现这一点,而无需我手动将数据从查询字符串中提取出来并自己取消编码。

客户端脚本(请记住这是测试代码而不是生产代码)

以及接收它的服务器端函数:

0 投票
3 回答
1346 浏览

asp.net-mvc-3 - Wcf Web Api 服务路由与常规 asp.net mvc 路由冲突(web api preview 4)

我注意到我的 mvc 应用程序在使用时创建了错误的 url:

这是生成的 html 源代码:

请注意,动作以/books开头。这是错误的!

我注意到的是 Html.BeginForm 总是包含第一个 Web api 的开头,该 web api 已向 MapServiceRoute 注册。(见下面的代码)

我花了很长时间试图弄清楚为什么我的应用程序中的 url 被破坏了,但是却一无所获。然后我决定用一个极其简单的 mvc 应用程序进行测试,果然问题可以很容易地重现。我测试过的 mvc 应用程序非常简单,它是由一个 asp mvp 创建的。你可以在这里找到它。我所做的只是添加 TestController 和 Views/Test/Index.cshtml 视图。在视图中,我添加了上面显示的 Html.BeginForm。如果您启动应用程序并访问测试控制器,只需将鼠标悬停在提交按钮上(或查看 html 源代码),您就会看到 url 是错误的。

有谁知道如何避免这个问题?

编辑:这适用于 web api preview 4(2011 年 4 月)。

0 投票
2 回答
1187 浏览

json - 如何使用 WCF WebApi 返回 Json 值

我在此创建了一个示例 WCF 休息模板 WebApi,我在运行服务时使用实体框架获取数据,因为它返回显示结果的字符串值,但在 json 值末尾添加 XML 代码,如下所示我解决这个问题。

我的代码

请帮我解决这个问题。

0 投票
1 回答
1441 浏览

odata - WCF WebApi 启用 OData 查询支持

我关注了 WCF Web API 入门。一切正常,它支持一些运营商,比如

但是当我尝试其他查询时

或者

它给出以下错误

服务器在处理请求时遇到错误。有关更多详细信息,请参阅服务器日志。

但同样的查询也适用于 Netflix 等其他 ODATA 服务。WCF Web API 是否仅支持一组有限的查询,或者我遗漏了什么?

0 投票
2 回答
702 浏览

wcf - 如果我想在 IIS 中进行 REST,我现在应该使用 WCF Web Api 吗?

我需要创建一个在 IIS 上运行并与WCF Web Api一起使用的 REST API 。与普通的 WCF 或现在已弃用的 WCF starter kit相比,它似乎能够做我想做的一切。我还没有真正尝试过这些,但 conneg 似乎很难或不可能,这是一个交易破坏者,因为 conneg 是 HTTP 的许多很好的正交设计功能之一,因此,REST-on-HTTP,我打算完全利用我的优势。

问题:由于目前只有“Preview 4”版本(2011 年 4 月),我无法找到有关 MS 预计何时发布它的太多信息(除了今年或明年的印象) -我应该使用已经

特别是当源代码在那里并且我可以 - 最坏的情况 - 进入并自己修改和构建它时,使用经过良好测试的预览构建进行生产几乎感觉安全

更多细节:我想这周开始创建原型,REST API 将在几个月(今年)内最终在生产机器上运行。我希望 API 仍然会发生一些变化,并且检查 codeplex 上的活动似乎正在积极开发中,但我可以在更改这些更改的同时更改我的代码

0 投票
1 回答
922 浏览

asp.net - 如何在标准 ASP.NET 中创建 WCF WebApi

我想在常规的 ASP.NET C# 项目中使用 WCF WebApi。我已经在 MVC 应用程序中创建了 WCF WebApi,但我想在普通的 ASP.NET 中创建。是否有任何示例链接可以显示这一点?

0 投票
1 回答
1893 浏览

.net - 使用 WCF HTTP Web API,UriTemplateMatch 始终为空

我已经根据我找到的最新教程设置了我的服务,并且一切似乎都运行良好。

然而,

为了访问包含 QueryParameters 集合(例如 ?name=tom&age=20)的 WebOperationContext.Current.IncomingRequest.UriTemplateMatch 类,我需要将服务配置为使用 WebHttpBehavior。我设法让它工作的唯一方法是使用控制台应用程序中的 WebServiceHost 自行托管它。我无法通过 IIS 或 cassini 的 web.config 或 global.asax 让它工作。

我觉得奇怪的是,关于如何使用 web-api 的教程在 IIS 中托管东西之前谈论 IoC:那不是更有用吗?他们似乎都在使用极其简单的服务,根本不使用查询字符串,还有 IoC!

以下是我发现的几乎提到问题但没有解决问题的资源:

0 投票
2 回答
828 浏览

wcf - 在 HTTP 下载请求标头中设置接受

我有一个返回发票的 WCF Web Api 端点:http://localhost/api/invoice/23

它返回的格式是请求中接受头的格式。如果 Javascript 需要 JSON 或 XML,那么它只需在接受标头中设置它。这就是 WCF Web Api 的工作方式。我已经在发票中添加了一个 PDF 格式化程序,以便在请求应用程序/pdf 时,它会以适当的 MIME 类型返回一个呈现的 pdf 文件流。这工作正常,我可以在提琴手测试它。

我需要用户在浏览器中单击某些内容以开始 PDF 下载并弹出打开/保存对话框。我不知道如何执行此操作并设置请求的接受标头。javascript 中的静态链接或 window.location 不起作用,因为它不允许我设置标题。AJAX 请求不起作用,因为虽然我可以设置标题,但它需要返回文本,并且不会在浏览器中显示为下载。

我不确定我该怎么做。任何建议将不胜感激。

0 投票
1 回答
1237 浏览

wcf - WCF Web API 相对于 WCF REST 服务的优势

我已经有一个通过 SOAP 消息进行通信的 WCF 服务,现在我需要修改此服务,以便可以从 JavaScript 中使用它。客户要求我研究 WCF Web Api。我不明白使用 WCF Web Api 比 WCF RESTful 服务有什么优势。WCF RESTful 服务是否足以胜任这项工作?