问题标签 [nelmioapidocbundle]
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.
rest - 覆盖 nelmio api doc 上的 @param doc
我有一个使用 ParamConverter Symfony 服务的 REST 控制器,使用 nelmio api doc annotation:
api 文档已正确呈现,但显示了Plan
需求类型:
我想将我的参数重命名为plan_id
并指定integer
类型。
所以我尝试了一些requirements
选项,如下所示:
但现在它向我展示了两个参数:
@param
从 api doc 覆盖或删除标签的最佳和正确方法是什么?当然,如果不将其从评论文档中删除...
谢谢你的帮助!
php - Nelmio Api Doc 中的组排除在更新作曲家后不起作用
我将参数设置为数组,如http://jmsyst.com/libs/serializer/master/reference/annotations中所述
并在另一个类中定义一些选项
在@ApiDoc 我定义
在更新之前它运行良好。但是composer update
只有“QuestionAnswer”组名有效并且它显示了 QuestionOptions 类的所有属性。如何以更新前的方式提交数组中的属性?
symfony - 在 nelmio 沙箱中添加 oauth2 支持
我正在研究 Symfony2 中的 REST API(使用 FosRestBundle 创建)。
在启用 oauth 之前,我可以尝试nelmio提供的沙箱中的 API 方法。
例子:
但是,现在启用了 oauth 以调用 API 方法,我必须将 oauth 令牌添加为查询字符串。
例子:
这些 api 调用在 nelmio 之外工作,没有任何问题。
为了在 nelmio 中激活对 oauth 的支持,我添加了以下配置/app/config.yml
:
之后它会在屏幕顶部询问一个api key
,但是如果我在那里设置了 oauth 令牌,我在尝试使用沙箱时仍然会收到未经授权的响应。
知道如何解决这个问题吗?
php - 在 routing_dev.yml 中检测到循环引用
我对这个循环参考问题感到疯狂,我找不到我做错了什么。这是的内容/app/config/routing.yml
:
这是的内容/app/config/routing_dev.yml
:
最后是以下内容/src/PDI/PDOneBundle/Resources/config/routing.yml
:
每当我在dev
env 尝试一些 URL 时,我都会收到此错误:
Classes.php 第 7527 行中的 FileLoaderImportCircularReferenceException:在“/var/www/html/reptooln_admin/app/config/routing_dev.yml”中检测到循环引用(“/var/www/html/reptooln_admin/app/config/routing_dev.yml”> “/var/www/html/reptooln_admin/app/config/routing.yml” > “/var/www/html/reptooln_admin/src/PDI/PDOneBundle/Resources/config/routing.yml”
“/var/www/html/reptooln_admin/app/config/routing_dev.yml”)。
这是完整的堆栈跟踪|日志:
问题出在哪里?我做错了什么?我正在尝试设置 NelmioApiDoc 和 FOSRestBundle
编辑 1
我已经修复了上一个问题,但得到了另一个类似的问题。这是我所做的更改。
并将错误更改为:
Classes.php 第 13960 行中的 FileLoaderImportCircularReferenceException:在“/var/www/html/reptooln_admin/app/config/routing_dev.yml”中检测到循环引用(“/var/www/html/reptooln_admin/app/config/routing_dev.yml”> “/var/www/html/reptooln_admin/app/config/routing.yml” > “/var/www/html/reptooln_admin/src/PDI/PDOneBundle/Resources/config/routing.yml”
“PDOneBundle\Controller\Rest\CompanyRestController”>“/var/www/html/reptooln_admin/app/config/routing_dev.yml”)。
问题出在/src/PDI/PDOneBundle/Resources/config/routing.yml
哪里?不能在同一个 YML 文件中生活annotation
和输入?rest
我该如何处理?
mongodb - NelmioApiDocBundle 无法解析 mongoDB 文档
我使用 NelmioApiDocBundle 来记录我的 API-Rest。如果我使用实体类,则会正确创建文档(输入和输出)。尽管如此,Nelmio 并没有为 MongoDB 的 Document 类创建文档:(
有任何想法吗?
php - 带有路由参数的 FOSRestBundle“缺少一些强制参数 (id)”
我正在使用带有 FOSRestBundle 的 Symfony 2.7.3 来构建一个 REST api。我的模型有user
并且有tickets
. 用户可以拥有票证,我想通过调用 /user/{id}/tickets 端点来获取用户票证。我的 api 有页面和限制查询参数。我param_fetch_listener: force
用来注入我的方法参数。我正在尝试混合路由参数和查询参数,但出现错误"Some mandatory parameters are missing (id)"
。我的方法注释是:
当我到达终点时,我收到错误:"Some mandatory parameters are missing (\"id\") to generate a URL for route \"api_1_get_users_tickets\"."
. 关于如何解决它的任何想法?谢谢!
编辑:上面的代码工作正常。错误消息与我里面的一些代码有关// my code
。我用空返回尝试了我的方法,它奏效了。我在一些内部逻辑中丢失了我的身份。对困惑感到抱歉。我会考虑关闭此问题,或者将其保留在这里以供将来参考。谢谢!
php - Nelmio Api Doc Bundle:记录所需参数
我目前正在使用 NelmioApiDocBundle,对此我还不是很熟悉。我正在编写的 API 必须提供更改特定用户密码的路径。文档应说明,要更改密码,旧密码和新密码都需要。由于我没有找到 和 之间区别的解释Requirements
,Parameters
我猜第一个用于来自路由的数据,而后者用于 API 调用本身。
归档此类文档的第一次尝试是实现一个简单的模型,然后 JMSSerializerBundle 会自动转换:
控制器通过此操作方法接受 API 调用:
这导致文档显示username
为需求old_password
和new_password
参数。为了根据需要标记这些参数,我通过注释向属性添加了 Symfony 约束:
但是,虽然使用这些注释标记了所需的属性,但它确实会产生奇怪的输出:
注意到参数被添加了两次而且格式不同吗?添加@SerializedName("old_password")
没有效果。关于这张票,问题仍然没有解决。
另一种接受动作数据的方法是使用自定义表单,它确实将属性标记为需要,但也不会生成正确的输出。更改ChangePasswordParam
自定义表单:
这些参数应该命名为“old_password”和“new_password”,我不知道如何归档。
提前致谢
symfony - 如何从 NelmioApiDocBundle 生成的文档中删除 _format URL 后缀?
我已经NelmioApiDocBundle
在 Symfony 中为我的新的面向 API 的项目安装了这个,我无法摆脱.{_format}
这个包添加到我所有端点 URL 的后缀。
这是它的外观:
我的 API 不支持_format
as 后缀。它确实支持它作为查询参数或请求标头。因此,如果我尝试从 NelmioApiDocBundle 沙箱向此端点发出请求,它会收到 404 错误响应。
这是我当前关于 nelmio 的 config.yml 部分:
yml
nelmio_api_doc:
name: My API doc
sandbox:
enabled: true
endpoint: null
accept_type: application/json
body_format:
formats: null
default_format: json
request_format:
formats:
json: application/json
xml: null
method: accept_header
default_format: json
authentication:
name: bearer
delivery: query
cache:
enabled: false
file: '%kernel.cache_dir%/api-doc.cache'
symfony - 如何在 Nelmio ApiDocBundle 中指定参数的格式
我使用注释的input
属性@ApiDoc
来指定我的 api 的参数,这些参数是表单的字段。
data_class
of form 是一个对属性进行约束验证的实体。
我希望 nelmio api doc 将参数格式指定为实体的验证约束,但格式为空。
如何在 nelmio ApiDocBundle 中指定参数格式?
编辑:也许我写了一个不好的问题。
我们可以为input
&指定解析器output
,如果我们没有为这些指定解析器,它会为input
&调用所有解析器output
,然后调用所有解析器UserType
。
nelmio
有一个名为ValidationParser的解析器,它有一个名为parseConstraint的方法,用于设置format
输入和输出,但我的文档没有调用此方法,为什么?
forms - 使用带有嵌套表单的 FormType 时,NelmioApiDocBundle 会生成额外的输入
我使用 NelmioApiDocBundle 来生成 API 文档。问题是当我使用带有嵌套表单或按钮(提交/取消)的 FormType 时,我得到了额外的参数。这是我的表单类型:
在我的控制器中:
如何删除这些额外参数(用户、联系人、验证者)?