gpt4 book ai didi

spray - 如何生成 URL 以链接回对象?

转载 作者:行者123 更新时间:2023-12-01 22:58:46 25 4
gpt4 key购买 nike

我正在尝试使用 spray 构建一些 RESTful 服务。我已经弄清楚如何构建我需要的指令。但我遇到的问题是如何可靠地生成返回我正在使用的“资源”的 URL。请注意,我在这里使用术语“资源”,因为它用于 RESTful API(即通过 API 引用的服务器端对象)。

我查看了文档,除了提到 Java 意义上的“资源”(即类路径中的数据文件)之外,我没有找到任何引用资料。

当然,我可以构建一个将“/items/127”映射到服务器端资源的指令。但是我看不到如何在 Spray 中(至少以安全和自动的方式)做的是如何在给定服务器端资源的情况下生成这样的 URL。我正在寻找类似于 Flask 框架中的 url_for 的东西。

目前,我正在编写函数来执行此操作。但是,当然,它们很脆弱,因为它们不是 DRY(即它们在生成 URLS 时不使用任何 Spray 路由知识)。

我错过了什么吗?

最佳答案

您要求的是反向路由。正如@iwein 所说,Spray 中不直接支持反向路由。您可以从 Matthias in this thread 确认这一点.有一个 open ticket for this issue .

但是,有一种方法基于 Marcel Mojzis 开源的 PathMatcher,您可以找到它 here .

我也有此需求,但我将采用“已知模式”方法,直到 Spray(或 akka-http)针对此问题提出自己的解决方案。本质上,我有一个对象知道如何为事物的某些模式生成 URL。每个模式都是一个函数,对象的客户端必须通过函数名称之一请求 url。不理想,但在 akka-http 提供更通用的解决方案之前非常简单有效。

关于spray - 如何生成 URL 以链接回对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12501223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com