问题标签 [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 回答
452 浏览

entity-framework - WCF Web Api 项目中的 DTO

我一直在阅读一些关于通过 WCF Web Api 公开数据的最佳实践,并且在许多地方似乎建议不要使用域实体来公开您的数据,而是为此使用 DTO。

我在网上找不到有关如何执行此操作的示例。

我在哪里可以找到有关此的一些文档/示例?

你对这种方法有什么看法?

请帮忙。

0 投票
3 回答
6646 浏览

wcf-web-api - 如何在 Windows 服务中托管 Web API

我想使用 WCF Web API 公开几个资源。我已经使用 Web 主机调查了 Web API,但我们的服务都在生产中作为 Windows 服务运行,所以现在是时候让我把测试放在一边,并验证一切都可以按照我们的需要运行。我在这里查看了示例应用程序:http ://webapicontrib.codeplex.com/SourceControl/changeset/view/2d771a4d6f6f#Samples%2fSelfHosted%2fserver%2fProgram.cs但这不适用于当前版本(预览版 5)因为我们的代码无法访问 HttpConfigurableServiceHost 类。

Web API 最吸引人的方面之一是使用 MapServiceRoute 和新的 WebApiConfiguration 的简单启动。但是,我看不到为服务定义基本 url 和端口的方法。显然,将服务托管在 IIS 中消除了这一点,因为我们在 IIS 中配置了这些信息。在 Windows 服务中托管时如何实现此目的?

0 投票
3 回答
300 浏览

javascript - 保护我将在客户端使用的 REST 服务,使其不被其他人使用

假设我已经顺利地创建了我的 REST 服务并且我正在返回 json 结果。

我还为我的用户实现了 API 密钥,以便为我的服务进行通信。

然后 A 公司开始使用我的服务,我给了他们一个 API 密钥。

然后他们创建了一个HttpHandlerfor 桥(我不确定这里的术语是什么),以免暴露 API 密钥(我也不确定这是正确的方法)

例如,假设我的服务 url 如下:

www.myservice.com/service?apikey={key_comes_here}

A公司正在从客户端使用此服务,如下所示:

www.companyA.com/services/service1.ashx

然后他们开始在客户端使用它。

A公司在这里保护了api密钥。没关系。

但是这里还有另一个问题。其他人仍然可以获取www.companyA.com/services/service1.ashxurl 并开始使用我的服务。

有什么方法可以阻止其他人这样做?

作为记录,我使用 WCF Web API 来创建我的 REST 服务。

更新 :

公司 A 的 HttpHandler(第二个链接)仅查看主机标头以查看它是否来自www.companyA.com。但我猜很容易伪造。

更新 2:

是否有任何已知的方法可以为 url 实现 Token。例如,假设www.companyA.com/services/service1.ashx它将携带一个表示 TOKEN 的查询字符串参数,以便 HttpHandler 检查请求是否正确。

但我想这里有很多事情要考虑。

0 投票
1 回答
840 浏览

asp.net-mvc - 我可以在同一个 AppHarbor 站点上运行 MVC 应用程序和 WCF Web Api 吗?

我们有这种结构的解决方案。

  • OurApp.Web(带有控制器、视图的 mvc 3 项目)
  • OurApp.Api(带有 wcf web api 服务类的 mvc 3 项目)
  • OurApp.Domain(实体、存储库、工作单元等)
  • OurApp.Tests(测试)

我们想使用如下结构的 dns:

http://www.ourapp.com指向 OurApp.Web

http://api.ourapp.com指向 OurApp.Api

我们想在AppHarbor上托管。

我们应该怎么做?

0 投票
1 回答
248 浏览

asp.net-mvc - WCF Web Api 作为 asp.net mvc 3 应用程序的子域?

我有一个正在运行的 mvc 应用程序mydomain.com,并且我已将一个 wcf web api 添加到 web 项目中。

我可以通过 go 访问其余服务,mydomain.com/MyResource但实际上我只想MyResource在 go 时工作api.myDomain.com/MyResource,并mydomain.com/MyResource寻找一个调用的控制器MyResourceController,如果它没有找到它则抛出错误。

我怎样才能做到这一点?

0 投票
1 回答
225 浏览

azure - WCF Web API 测试客户端认为它在不同的端口上?

当我尝试通过浏览器访问我的 WCF Web API 测试客户端时,它认为它在端口 84 而不是 83 上运行(我在 Azure Development Fabric 中运行)。它将 URL 更改为“http://machinename:84”而不是“http://localhost:83”。由于没有在端口 84 上监听,它显然不起作用。

0 投票
1 回答
576 浏览

rest - 后端的通用架构?

我们正在努力对我们正在设计的一些新系统的架构选择进行前瞻性展望。几乎我们想要构建后端系统,无论我们决定使用什么接口(WinForms、Silverlight、MVC、Webforms、WPF、IOS(IPad/Iphone)等...),我相信这只会尖叫 REST。我们的组织通常只会使用 Microsoft API,但由于我不知道 WCF-Web-Api 何时发布,我们希望尽快开始,看来我们别无选择。

我们想在这里采取一些小步骤来增加买断的机会。所以我们不想用 IIS 设置另一台服务器。

在可预见的未来,我们将只使用 WinForms 和 WebForms。我在想我们可以在本地机器上使用 Nancy,但以 RESTFul 方式与它通信。这样,将来它应该像设置服务器并将所有客户端重定向到该服务器而不是本地一样简单。

我从未使用过 NancyFX 或 OpenRasta,但是,据我所知,这听起来很合适。

所以问题是:

  1. 我正在考虑的方法是一种好方法吗
  2. 听起来 NancyFX 或 OpenRasta 会更合适吗?
  3. 我们应该等待 WCF-Web-API 的任何原因,如果是这样,是否有人有一个大概的发布日期。
0 投票
5 回答
97604 浏览

c# - 通过 HttpClient 将空正文发布到 REST API

我试图调用的 API 要求我进行 POST 但主体为空。我是使用 WCF Web API HttpClient 的新手,我似乎无法找到可以使用空正文发布帖子的编写代码。我找到了对一些 HttpContent.CreateEmpty() 方法的引用,但我认为这不适用于 Web API HttpClient 代码,因为我似乎找不到该方法。

0 投票
1 回答
275 浏览

wcf-web-api - 使用 web.config 配置 wcf webapi

我目前正在配置一个现有的 WCF SOAP Web 服务,以便使用 WebApi 进行访问

我已将 WebApi 属性和以下代码添加到 global.asax 中:

是否可以使用 web.config 而不是这些行来配置 webapi?

0 投票
5 回答
82139 浏览

c# - moq objects Returns 方法,应该返回一个空对象

我正在开发一个 Web API,我想出的测试之一是,如果客户端使用物理测试 ID 进行 GET 操作(物理测试是我正在寻找的资源)并且找不到物理测试,Web API 应返回 404 状态。

现在,我正在使用 moq 框架进行测试,并且我有以下代码:

我需要 Returns() 方法返回一个空对象,如果找不到资源,这将是实际 API 方法返回的内容。

我尝试在 Returns() 方法中将 null 作为参数发送,但没有成功。