api-design

    0热度

    1回答

    我正在创建一个Web API,我有一个场景,用户需要加载一堆批量数据,然后将其作为多个单独的条目加载到数据库中。这些数据可能是全新的,因此可能已经创建,或者数据可能已经存在并因此被更新。 POST和PUT的定义似乎预计一次只能处理单个数据,而创建的状态代码反映了提供位置的情况。 我已经有方法可以创建或更新单个数据。我是否应该编写其他方法来帮助创建和更新此批量数据,或者我应该期望用户进行单个调用(可

    0热度

    1回答

    我有用户模型和事件模型。 用户可以参加活动,我不知道从哪里写代码 - 在UsersController和用户模式,或在EventsController和事件模型 UsersController def join_event current_user.join_event(Event.find(event_id)) end end 或 EventsControll

    2热度

    1回答

    我开发一个OpenID的消费者库[1]认为它的工作在两个独立的Web请求: 当用户请求认证库从用户提供的URL中发现一些信息。 当库实际完成身份验证时,在另一个Web请求期间使用此信息。 我想就如何更好地设计出库的API坚持两个请求之间的“发现信息”的建议: 我可以问来电者提供他们自己的会话对象的两个电话和库将存储和读取它自己的对象: result = openid.request(session

    3热度

    1回答

    我一直在玩Direct3D 11,很惊讶地发现HLSL StructuredBuffer<T>必须绑定到着色器资源视图(SRV),而RWStructuredBuffer<T>必须绑定到统一访问视图(UAV)。深入研究,似乎所有读写着色器资源都需要无人机,而只读资源需要SRV。 比较UNORDERED_ACCESS_VIEW_DESC和SHADER_RESOURCE_VIEW_DESC结构,无人机用

    1热度

    2回答

    我创建了一个支持应用程序的库,但是在最新版本的应用程序中,开发人员更改了结构而不更改类名。 因此,应用程序的第1版在包A中有classX,但版本2在包B中有classX。如何以允许在相同构建中支持这两种方式的方式来开发我的库? 编辑:我的图书馆依赖于应用程序,而不是其他方式。

    2热度

    1回答

    设计REST API时,传递用于统计和日志记录所需的元数据但不会更改服务器响应的最佳做法是什么? 例如,如果我有服务查找最近的公共厕所,我可能想知道用户的位置是否由GPS确定。或者,如果最终用户的请求经过多个系统,我可能想要传递一个请求ID以进行调试。 据我了解的选项有: 查询参数 喜欢上了谷歌地图API的“传感器”参数。 没错,因为它可以让用户使用普通的网页浏览器来浏览API。 对,因为对于发现

    4热度

    1回答

    注意:我在这里认为POST表示“create”,PUT表示“update”,就像GitHub一样。这不是支持POST或PUT的论点。 我有一个company资源和一个assign行动。我想知道如何在我的REST API中翻译这种行为。 我想过是这样的: PUT /company/:id/assign user_id: 5 ,如果我想取消分配这个用户怎么办? 我应该使用布尔值作为参数吗? 我应

    1热度

    1回答

    考虑scenerio, 有一个名为Device的对象,设备可能有多个与其关联的参数,这些参数可能有多种类型。 base-device-param (/xx/yy/4/base-device-param) device-param-type1 extends base-resource-param (/xx/yy/{device-id}/device-param-type1) device-pa

    5热度

    1回答

    我正在为管道接口中的某些编码封装一个C库的过程,但我已经遇到了一些需要做出的设计决策。 C库设置完成后,我们保持编码器上下文。有了这个,我们可以编码或更改一些参数(让我们将Haskell接口称为最后一个函数tune :: Context -> Int -> IO())。有两个部分,以我的问题: 编码部分容易在Pipe Foo Bar IO()包裹起来,但我也想揭露tune。由于编码上下文的同时使用

    0热度

    2回答

    假定组分(说COMPA)在SDK暴露出公共C#的.NET类(比如碱): namespace CompA { public abstract class Base {} } 一个不同的组件(比如说EXTB)通过从该基类派生延伸COMPA: namespace ExtB { class Derived : CompA.Base {} } 您的意见是什么,请不要允许声明类ExtB.Derived