问题标签 [yada]
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.
clojure - Clojure - 使用带有 Yada/Aleph 的 core.async 通道
我正在尝试使用 Clojuremanifold
库,为了理解它,我需要将core.async
通道转换为流形流。
我想使用core.async
通道创建以下等效项:
我正在尝试将core.async
频道输入yada
. 第一个代码示例, usingmanifold.stream/periodic
工作,而不是其他使用core.async
. 我试过雅达1.0.0
和1.1.0-SNAPSHOT
。
使用manifold.stream/periodic
作品:
使用manifold.stream/->source
返回错误 500 :
第三次尝试,使用core.async
通道(不同的错误 500):
clojure - 在 yada 中为每个路由请求添加函数
目前我正在使用 Yada 作为 web lib。现在我想在路由被命中之前执行一些功能。
我测试过的方法: - 将当前资源包装为子资源,但随后 swagger-doc 找不到资源 - 使用前置拦截器,但此时文档不完整,我遇到错误
我的代码:
是的,我稍后会重构资源;-)
有人有想法吗?
clojure - 雅达如何服务静态资源
使用 Compojure,我可以像这样提供静态资源:
按照雅达文档我有这个工作:
但是如何让雅达从文件系统中提供资源呢?
clojure - 雅达如何使用可选查询参数?
我正在使用 Clojure 中的 Yada 库制作玩具 API。它在数据库中搜索以给定字符开头的城市名称,并返回一些关于它的信息。
我想要一个形式的 URI:/cities/:name?count=:count
所以例如/cities/ber?count=4
将返回前 4 个匹配项。但我也希望/cities/ber
在没有?count=
参数的情况下返回默认数量的结果(比如第一个)。
我已经像这样定义了我的路线和 yada 处理程序:
?count=
如果我提供查询参数,这很好用:
{:status 400, :errors ([:query {:error {:count missing-required-key}}])}
但是如果我不提供它,我会得到状态 400 ( ):
yada 的文档说它支持使用“模式”库的可选查询参数。所以我在架构的文档中发现存在一个schema.core/maybe
函数。我试图修改我的 yada 资源如下:
这不起作用(同样的 400 错误)。
然后我尝试了:
这也没有用。
所以我的问题是:在 yada 中使用可选查询参数的正确方法是什么?
clojure - 如何配置 yada 以允许跨域请求(Clojure)?
我有一个 yada 资源配置如下:
并curl -i localhost:8080/api/new
返回:
但是当我添加访问控制配置以允许来源时:
我没有看到额外的标题:
我也尝试使用https://juxt.pro/yada/manual/index.html#cross-origin-resource-sharing-cors中的示例,但结果相同。
Access to resource at ... from origin ... has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource
当我尝试从我的 UI 访问端点时,我看到了可怕的情况。
我在这个配置中缺少什么?