问题标签 [laminas-api-tools]

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 回答
3071 浏览

oauth - 面向用户的 Apigility 和 oAuth

我即将开始使用 rest API 开发应用程序,并且我想使用 apigility。不幸的是,这个想法有一个问题。我找不到可靠的信息来源,如何允许通过 oAuth 对普通用户进行身份验证。

我需要为 Angular 应用程序和本机移动应用程序提供访问权限(将来可能为第三方 Web 应用程序提供)。我发现的所有资源都是关于为特定客户端应用程序授予对 api 的访问权限,而不是为使用此应用程序的特定用户授予访问权限。我不想实现两种不同的身份验证方法,所以如果有办法用apigility解决这个问题,那就太好了。

您对如何解决这个问题有什么建议吗?我知道我可以为所有注册用户生成客户端 ID 和密码,但这接缝了一个有点糟糕的解决方案,而且我已经有了用于存储用户信息的数据库模式。

0 投票
1 回答
1153 浏览

mongodb - 如何配置 apigility 以使用 Doctrine 的 MongoDB ODM?

我正在尝试将 apigility 与学说的 mongodb odm 一起使用。
我已经设置了我的文档并按照应有的方式配置了学说模块。
我已经(手动)插入了一个文档到 mongo,并定义了一个基于代码的 rest 服务,它的“fetch”方法(在资源类中)返回文档的存储库“find”返回值。

当我调用端点(没有 ID)时,我得到了我插入的单个文档的数组,但它没有正确显示:

这个输出有(至少)两个问题:

  1. 每个属性的键都是奇怪的格式。它包含带有文档名称的完整命名空间,以及 NULL 的 utf8 代码
  2. “self”链接没有使用正确的 id(它使用数字 1 而不是 mongodb 自动生成的 id)。

有什么问题/缺失?

0 投票
0 回答
2281 浏览

php - 使用 ZF2 Oauth2

我正在尝试让https://github.com/zfcampus/zf-oauth2与我的应用程序一起使用(主要是因为我已经安装了 apigility 并且 zf-oauth2 附带了它)。

我正在阅读最后一部分,它说要保护,我只是简单地使用以下代码(例如,在控制器的顶部):

但是,必须以某种方式注入 $this->server。但是,我似乎无法找到如何以及注射什么。通过单击链接查看 AuthController.php,我找到了一个页面...

编辑:感谢 Tom 和 Ujjwal,我想我更近了一步。

在我的控制器中,现在我有以下内容:

在我的 Module.php 中,我尝试像这样注入 OAuth2Server:

但是,当我尝试渲染页面时,它并没有捕捉到我的注入。我明白了

可捕获的致命错误:传递给 ZF\OAuth2\Controller\AuthController::__construct() 的参数 1 必须是 OAuth2\Server 的实例

请指教!

谢谢

0 投票
1 回答
88 浏览

php - 如何将私人图像保密

我的 API 服务中有一些用户通过 Web 客户端(网站)使用 OAuth 进行身份验证。

当用户请求他们的私人档案图片时..这些应该如何提供?我看到一些选项有一些缺点,并且不确定未来最好的决定是什么。

1) 使用散列名称托管图像...例如 ( ~/public/folder/309dsfas928f39rjkfe93.jpg)

Pro - 简单,将所有资产集中到基于 Apigility 的服务器上。 Con - 没有什么能阻止某物找到图像.. 一旦找到 URL,就不能保证访问控制。

2) 在 JSON 请求中传回 img 数据

Pro - 您确信接收图像的人有权限.. 每次访问图像时 Con - 现在图像需要(暂时?)存储在 WebClient 的服务器上.. - 以 JSON 传输的图像对我来说似乎是错误的

是否有数据流选项?谢谢

0 投票
2 回答
842 浏览

php - Apigility 需要 Code-Connected REST POST 实体的 route_identifier_name

我似乎只能在调用 /merchant/1 时创建新实体,但是 /merchant 将返回 405 状态。

这是我的 POST 资源方法:

这个实体的 id 是一个 auto_incrment 字段,所以对我来说,客户端不提供标识符是有意义的。

这是我的 module.config.php 中的一个片段:

不知道我还能提供什么来帮助你们了解情况,但很乐意根据要求提供更多详细信息。

谢谢你的时间。

0 投票
3 回答
1928 浏览

php - Apigility 文件上传

我是 Zend 的 Apigility 新手,文件上传有问题。如 Apigility 文档中所述,我在管理 UI 中创建了一个新的休息服务和配置字段:https ://apigility.org/documentation/recipes/upload-files-to-api

当试图从 InputFilter 获取任何数据时,我只得到空值。

资源控制器

var_dump 结果

出于测试目的,我使用了 Chrome 的 Postman 扩展,其中 Content-Type 标头设置为“multipart/form-data”,并将文件附加到密钥:filedata。

我很确定,我可以使用 json 和 base64_encode 发送文件,但我宁愿坚持下去,直到绝对必要为止。

0 投票
1 回答
88 浏览

php - zf2 oauth2 捕获额外的参数

我在 zf2 框架下使用 apigility 来构建我的 Rest 服务器

因此,我们正在重建其余服务器,我们的客户端应用程序正在使用额外的参数调用 /oauth,我不确定如何获取这些参数。

默认情况下,/oauth 将需要client_id, client_secret,grant_type。现在,我的客户端应用程序也正在传入client_languageclient_platform. 如何拦截这些变量?

我正在考虑建立在引导程序上,但我无法让它工作......

谢谢!

0 投票
1 回答
3023 浏览

php - php cURL给出空白响应正文

我在以下 cURL 请求中收到空白响应正文,但仅在一台机器上(osx 运行两个 vagrant 框)。我已经检查并重新检查了项目代码,它确实适用于我使用过的所有其他机器......除了一台。有任何想法吗?

我在 PHP 中的调用是POSTRequestTrusted(/api/login, <some_json_data>

输出 :

HTTP\\/1.1 200 OK\\r\\nDate: Tue, 24 Jun 2014 22:41:46 GMT\\r\\nServer: Apache\\/2.4.9 (Ubuntu)\\r\\nX-Powered-By: PHP\\/5.5.13-2+deb.sury.org~precise+1\\r\\nCache-Control: no-store\\r\\nPragma: no-cache\\r\\nContent-Length: 174\\r\\nContent-Type: application\\/json",null

0 投票
1 回答
1974 浏览

php - Apigility子路由没有获取父参数

我正在尝试为 Apigility 服务编写子路由,并且在渲染_self链接之前一切正常。

查看 ZF2 MVC 文档,我有点意识到我需要为我的参数设置一个 metadata_map 条目。但没有 Apigility 的示例。我读过硬编码不起作用,即便如此,这parameter是动态的,目前还不清楚如何正确调用module.config.php

编辑:添加路由器配置

0 投票
1 回答
670 浏览

json - Apigility 字段接受嵌入对象的数组?

我想创建一个 Apigility REST 服务,它接受例如用户对象的 POST,该用户对象具有包含地址对象数组的字段。我可以在没有验证器的情况下定义字段并在我的代码中处理原始 JSON,但我想知道是否有更好的方法来执行此操作,其中嵌套对象也可以由 Apigility 验证?