问题标签 [http4k]
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.
ssl - 在 http4k 中为 Jetty 配置 SSL
我正在尝试使我的 http4k REST API 需要 SSL,但我无法弄清楚如何为 SSL 配置 Jetty。
kotlin - 如何使用 http4k 公开招摇 UI?
我正在使用他们的Contract APIs构建一个带有http4k 框架的微服务。我可以轻松地在例如上公开 swagger API 描述 JSON。和/swagger.json
有没有一种简单的方法来公开招摇 UI,以便 1)我可以指定它可用的路径。(例如。/swagger-ui
) 2) UI 将被预先配置为从descriptionPath
上面指定的获取描述 JSON。
一个理想的 API 看起来像
kotlin - 在 kotlin 中使用高阶函数初始化类
Kotlin 中的高阶函数:
我有一个使用 wto 高阶函数的类:
我在对象内部定义了 getData 函数。
现在,我无法理解如何初始化类?
如何从 MyClass 类中调用此函数:
报告.kt
repo1.kt
docker - 为什么用“不权威”响应我的 heroku 托管容器应用程序
我尝试在Heroku中将我的简单 Web-App作为 Docker Container运行。在本地构建和运行容器时一切正常。
但是在访问生成的端点https://html5-landingpage-buddah.herokuapp.com/ Heroku 响应 HTTP 400 错误请求和消息“非权威”
Heroku 中的日志没有多大帮助:
我对该错误进行了研究,但没有发现任何有用的信息。同样在 Heroku 中重新创建应用程序,重命名 URL 并将应用程序移动到另一个区域也没有帮助。
这是从重启到 Web 应用程序上第一个请求的日志:
json - Kotlin http4k 读取响应为 JSONObject (org.json)
作为 kotlin 和 http4k 的初学者,我正在尝试阅读 jenkins 中构建作业的 json 响应。我的示例代码如下
我正在寻找一种方法来读取Response
from client(request)
,org.json.JSONObject
这样我就可以从中读取值。
我正在寻找一些可以帮助我理解如何做到这一点的指针。
docker - 使用 gradle 作为构建工具为 Kotlin http4k 后端创建 Docker 映像
我正在尝试为 Kotlin http4k 后端构建一个 docker 映像,但我无法让它正常工作。我无法创建一个胖 jar,所以当我尝试运行图像时我的依赖项丢失了。
所以我得到一个ClassNotFound
例外。
这是我的build.gradle
文件:
这是我的Dockerfile
:
我还尝试了一些 gradle 插件,它们应该使我能够构建一个 fatjar,但我没有让它工作。
kotlin - 如何理解 Kotlin 函数式接口与里面的伴随对象?
我想获得一些帮助以了解有关 Http4korg.http4k.core
包中使用的功能接口的 Kotlin 代码片段
我不明白Filter
界面,尤其是companion object
部分。一个典型的功能界面是这样的
你可以创建一个 lambdaisEven
根据这个简单的例子,看起来接口Filter
扩展了另一个接口(HttpHandler) -> HttpHandler
?然后它定义了一个函数签名companion object
?这个对吗?这部分的companion object
真正含义是什么?
java - 如何使用 http4k 验证请求来自 Google Cloud Platform 上的 Twilio?
我有一台使用 Kotlin 1.5、JDK 11、http4k v4.12 的服务器,还有使用 Google Cloud Run 托管的 Twilio Java SDK v8.19。
我使用 Twilio 的 Java SDK 创建了一个谓词RequestValidator
。
这可以使用Twilio 提供的示例来工作,正如 Kotest 单元测试所演示的那样。
(测试和示例代码不匹配 - 但OperatorAuth
它是一个应用twilioAuthPredicate
, 并ApplicationProperties
从 .env 文件中获取 Twilio auth 密钥的类。)
但是,除了这个简单的示例之外,无论是在创建单元测试时还是在运行时,都没有其他请求起作用。所有 Twilio 请求均未通过验证,我的服务器返回 401。Twilio 网站中的信息完全不透明。这令人难以置信的沮丧。它没有告诉我它是如何计算哈希的,所以我不知道出了什么问题。
这是一个使用从日志中收集的真实值的示例测试(尽管我已经编辑了标识符)。
有时验证会因为 Google Cloud 而失败。我之前曾在 Google Cloud Functions 上托管我的服务器,直到我发现 GCF 会默默地省略部分 URI https://github.com/GoogleCloudPlatform/functions-framework-java/issues/90
还有一个问题是,如果请求被“修改”,例如,如果我将 Twilio 回调 URL 设置为包含查询参数,例如https://my-gcr-server.app.run/twilio/callback?type=recording
,则 Twilio 签名会忽略此参数,但在验证身份验证时无法知道哪些参数Twilio 无视。如果标题被更改,也是如此。
是否有验证请求来自 Twilio 的工作方法?还是替代验证解决方案?
更新
我刚刚发现 Twilio 的RequestValidator
测试确实不足,只有一个例子RequestValidatorTest
kotlin - http4k 路由文档
我有一个旧的 kotlin 应用程序,它使用 http4k 作为休息端点。
应用程序很大,并且有几个独立运行的模块。这些模块公开routes
和嵌套routes
.
作为一个管理这个应用程序的人,我想知道所有可能的路由都有哪些并记录它们(如果可能类似于 Open API,但 Open API 需要单独定义路由,没有自动检测)。有没有办法爬取并检查所有可能的路线?