api-design

    2热度

    1回答

    我正在用ServiceStack构建API。我希望每个请求都有一个唯一的ID,以便我可以通过系统(分发)跟踪它。 我有我的合约程序集包含我的API的DTOs,所以我认为自然的地方将是使每个Request派生自一个基类,有一个密封的受保护的无参数构造函数,分配一个新的ID(可能GUID是罚款)。 但是,如果您愿意,可以通过客户端使用我的API,而无需使用合同DTOs程序集 - 裸体。在这一点上,客户

    2热度

    1回答

    只返回改变资源比方说,我设计一个REST API应该返回已认证用户的联系人列表 e.g. /users/me/contacts 为了提高性能,我会返回一个ETag并在If-None-Match头中的将来的GET请求中提供。假设什么都没有改变,那么API将返回一个Not-Modified响应。 但是当联系人列表发生变化时会发生什么?我不想再次返回整个集合,只是新的和修改的项目。 我可以发送一个H

    2热度

    1回答

    当程序尝试发布已存在的货件时,BigCommerce是否可以更改其API响应? 将货件过帐到BigCommerce时,如果货件已存在,则会收到以下错误消息。 <?xml version="1.0"?> <errors> <error> <status>400</status> <message>The field 'quantity' is invalid.</

    0热度

    1回答

    这是一个最佳实践问题,但您可能会对这里可能产生的影响有所了解。假设我打电话: GET /v1/items/ 并且没有找到任何项目。 我应该回报: 只需404 200与空数组 404与空数组 ?

    0热度

    1回答

    在API中,我在一组上执行动作。我遇到的问题是如何根据客户的偏好和支持的方法来改变行为。 某些操作类型需要客户端提供其他选项:例如,其中一个操作会导致发送电子邮件,因此客户端需要提供正文,收件人等。服务器可能知道比客户端更多的操作类型。例如,可以添加新的发送方法,但是旧客户端不会知道如何为其设置选项。除此之外,还有一些操作类型不需要客户端的选项,因此所有的客户端都可以在服务器启用后立即使用它。 除

    0热度

    1回答

    Aria是第三方计费系统。通过提供一些证书提供了一个API来访问存储在Aria中的信息。对于特定凭证,没有。的账户相关联。几乎所有Aria提供的API函数都需要账号。作为参数之一。所以,我的问题是,我必须在一个API调用中获取有关特定凭证的所有帐户的信息,而不指定任何帐户号。我们可以假设没有。的帐户少于400. 谢谢。

    1热度

    1回答

    我们现在正在设计我们的RESTful API,并对如何公开分页信息提出了一个问题。 似乎一些著名的服务,如Github上或Firefox市场在位,其API的东西象下面这样: { "meta": { "limit": 3, "next": "/api/v1/apps/category/?limit=3&offset=6", "offset": 3, "pre

    1热度

    1回答

    我的问题是关于何时将单独的模型合并到一个REST资源中,以及这是否会导致棘手和困难的设计问题。 比方说,我有一个电影流服务,用户只能观看他们有权限的电影流派。比方说,这些都与这些假设的模型表示: users (id) movie_genres (id, genre_name) users_to_genres_permissions (id, genre_id, user_id) 通过REST途径暴

    1热度

    1回答

    我设计和实施的Node.js从Ubuntu的使用通过x3270 tool IBM3270协议来访问IBM大型机的API。因此,Node.js处理spawns3270进程并使用它的stdin,stdout和stderr与IBM大型机进行通信。 我已经实现了以下接口: var hs = require('./hs'); var session = hs.createSession(opts);

    1热度

    1回答

    我正在研究第一个JSON-RPC/JSON-REST API。 JSON的一个便利之处是它可以很容易地表示结构化数据(用户可能有多个电子邮件地址,多个地址)等等...... 例如,Facebook Graph API很好地代表了一种方便的东西返回的JSON对象: https://fbcdn-dragon-a.akamaihd.net/hphotos-ak-ash3/851559_339008529