问题标签 [aqueduct]
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.
aqueduct - 渡槽控制器子路由
是否有可能在 Aqueduct 控制器中进行子路由?
aqueduct - 客户端模型等效于服务器端 orm 父模型
基于服务器端 open api 3.0 文档自动生成客户端模型不会产生等效于服务器端 orm 父类。
我正在开发一个新的渡槽服务器,并希望从服务器端模型自动生成浏览器客户端模型。我创建了一个 LanguageLevel 模型类和一个 LanguageLesson 模型类,其中一个 LanguageLevel 有很多 LanguageLesson。我分别创建了两个对应的控制器和getAllLevels、createLanguageLevel和getAllLessons操作。然后我创建了迁移文件以及打开的 api 3.0 文档文件。我使用 open api generate 实用程序来创建客户端库。
这适用于 aqueduct CLI 和项目版本 3.1.0+1。以下结果与版本 3.0.2 相同。对于客户端模型生成,使用了 openapi-generator-cli-3.3.4。
服务器端
类 LanguageLevel 扩展 ManagedObject<_LanguageLevel> 实现 _LanguageLevel {}
类 _LanguageLevel {
}
类 LanguageLesson 扩展 ManagedObject<_LanguageLesson> 实现 _LanguageLesson {}
类_LanguageLesson {
}
使用命令打开api 3.0:渡槽文档
{ "openapi": "3.0.0", "info": { "title": "back_end", "description": "七个阿拉伯语服务器。", "version": "0.0.1" }, "servers": [{ "url": " http://localhost:8888假,“allowEmptyValue”:假,“模式”:{“类型”:“整数”}}],“响应”:{“200”:{“描述”:“成功响应。” } } } }, "/lessons/{id}": { "parameters": [{ "name": "id", "in": "path", "required": true, "schema": { "type ": "字符串" } }] }, "/example": { "
注意 languageLevel 定义为仅具有“pk”属性的对象类型,LanguageLevel 定义为具有“pk”、“sequence”和“languageLessons”的对象类型。从规范中提取它们看起来像:
和
开放 API 生成的客户端模型(仅显示 LanguageLevel)
类语言级别 {
}
除了所有必要的代码之外,它还创建了 LanguageLevel 和 LanguageLesson 模型类。LanguageLesson 模型看起来不错,因为它具有预期的属性和对 LanguageLevel 的引用。但是 LanguageLevel 仅具有服务器端模型的 @primarykey 等效项。所以现在没有办法从生成的代码中显示 LanguageLevel 对象。我希望在这个阶段能够做到这一点。
dart - 如何在资源控制器中获取客户端远程 IP 地址
如何在资源控制器的功能中访问 request.connectioninfo.remoteaddress?我需要存储和记录客户端远程 IP。
dart - 如何将数据从 channel.dart 传递到中间件句柄方法?
我创建了一个中间件控制器,负责身份验证。控制器将链接在资源控制器的前面。我认为这是正确的方法吗?
在handle 方法中,我正在执行一个数据库查询,它需要连接信息。但是,当我尝试通过构造函数传递数据时,它告诉我不允许设置器。
将带有连接信息的 Map 从 channel.dart 传递到中间件控制器的最佳方法是什么(请参阅 dbConnectionDetails)?
通道.dart
在上面的示例中,我可以将 dbConnectionDetails 传递给 UserComplexQueryController 的构造函数,以便我可以将其用于数据库连接。
但是,如果我将 dbConnectionDetails 传递给 AuthMiddleWare 的构造函数,则会出现以下错误:
ArgumentError(无效的参数:无效的控制器“AuthMiddleware”。控制器不能有设置器,所有字段都必须标记为最终字段,或者它必须实现“可回收”。)
就我而言,AuthMiddleWare 正在获取在 URL 中解析的令牌,并将检查令牌在数据库中是否有效。如您所见,我发现除了直接在 AuthMiddleware isValid 函数中添加 dbConnectionDetails 之外别无他法。但我更愿意,如果我可以从 channel.dart 传递它。
是的,你没看错。我正在连接到 MySQL 数据库:)
dart - 如何在 Aqueduct 3 中启用 SQL 日志记录?
在终端中查看执行了哪些请求以及它们需要多长时间对我来说非常有用。HTTP 请求的日志记录工作正常,但我没有为 SQL 找到类似的功能。有没有办法使用ApplicationChannelconfig.yaml或在prepare()ApplicationChannel 中启用全局日志记录?
postgresql - 如何通过 Aqueduct 3 中的嵌套连接过滤查询?
我有模型(简化):
现在我想获取包含默认价格但仅使用特定货币的特定游戏的所有事件模板。
为了解决这个问题,我在我的控制器中使用了这段代码:
我希望所有的事件模板都将被选中,按游戏代码过滤,之后将加入按货币过滤的默认价格。但相反,我得到一个错误:
看起来 Aqueduct ORM 无法使用嵌套的 JOIN 进行过滤但是在这种情况下,文档中没有关于限制或限制的内容。
dart - 在 aqueduct 和 flutter 之间共享对象
我使用 aqueduct 作为服务器,我在其中定义了一个用户对象并将其扩展以使用 OAuth:
在完成 aqueduct 的工作后,我开始开发 Flutter 应用程序,并希望在 Flutter 中也使用 ManagedUser-object,这就是为什么我考虑将其放入一个单独的项目中的原因。
我现在面临的问题(在部署期间)如下:
正如我在这里读到的Dart Error: error: import of dart:mirrors with --enable-mirrors=false这是因为颤振似乎不支持渡槽的某些部分(不幸的是,我在共享项目中需要使用 ManagedObject)。
所以我有点卡在这里。我有哪些选择?我真的不喜欢在颤动方面再次映射所有对象。
error-handling - 如何处理包容性 -21、-103 无效值:不在 Dart 中的 RangeError 范围内?
我有一个工作了一年多的套接字应用程序。一个用户数据似乎超出范围。用户不断获得包容性 -21、-103 无效值:不在 RangeError 范围内。
错误字符串: RangeError(长度):无效值:不在范围 0..576460752303423487,包括:-103
如何处理包容性 -21、-103 无效值:不在 Dart 中的 RangeError 范围内?
StackTrace 当前:
socket.io - 如何使用渡槽和套接字获取完整数据?
我的颤振应用程序通过 https 连接到套接字,我正在使用渡槽获取安全数据。套接字数据是全长字符串,例如;
2_7#a_b_c_d_e_f_g#h_i_j_k_l_m_n#
我将数据转换为 json,我的 json 数据如下所示:“{data:2_7#a_b_c_d_e_f_g#h_i_j_k_l_m_n#}”
并发送到颤振应用程序。2_7# 表示我有 2 行和 7 列。原始服务器套接字数据 152_7# 这意味着我有 152 行 7 列。
当我尝试使用渡槽中的套接字获取此数据(152_7#)时,我只得到 12 行或有时 25 行。
如果服务器数据很短,我会得到所有这些,但可以获得大字符串数据。
我的问题是如何使用渡槽和套接字获取完整数据?
dart - Flutter - 将未来列表传递给 SearchDelegate
我一直在关注无聊的颤振秀上的颤振搜索教程 。我一直在尝试使用从未来列表派生的列表来实现相同的功能,其中数据来自 api(在本例中为 Aqueduct 服务器)。
目前我的屏幕列出了来自 api 的所有联系人,我现在想搜索那个联系人列表。我假设将相同的列表(已经显示)传递给搜索委托是最佳实践。不幸的是,我不确定如何实现这一目标。
我的代码如下(请注意我已经为这个例子剥离了一些代码):
简而言之,我需要通过“ContactSearch()”传递正确的列表/数据:
提前致谢。