问题标签 [spray]

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 投票
3 回答
3938 浏览

http - 如何在 Spray 框架中获取传入的 IP 地址

我正在查看即将进入的标头,但似乎没有 IP:

这是我从浏览器发出的请求。基本上我正在寻找:

这里的请求对象没有任何关于 IP 地址的信息。非常感谢任何帮助。谢谢。

0 投票
1 回答
2439 浏览

scala - 如何在喷雾路由中提取uri的一部分

我想创建一个 REST 服务,用户帐户的路径应该以id前缀开头,但作为路径本身的一部分,但像这样:

我尝试过使用 PathMatcher,但没有成功。我如何2314234从uri中提取?

0 投票
1 回答
2817 浏览

performance - 什么 scala 或 java 库可用于以最有效的方式每天从 1000 个域中爬取 +10M 页面

我正在制作网络爬虫。我已经尝试过异步 http 客户端,例如 scala tutorial scaling-out-with-scala-and-akka and spray中的客户端,但我无法让它工作。目前性能对我来说不是最重要的部分,但稍后我想在不更改库的情况下轻松提高请求/秒比率。

库应该能够对 http 标头进行操作,并且不应该在解析 dns 时出现性能问题。哪个库应该最适合这项任务?

0 投票
2 回答
2438 浏览

scala - 如何匹配路由中的特定接受标头?

我想创建一个仅在客户端发送特定标头时才匹配的路由Accept。我使用喷雾1.2-20130822

我想让路线工作:

在这里,我找到了一个使用accept()函数的规范,但我无法弄清楚在我的 Spray-Handler 中导入什么以使其作为指令工作。此外,除了这些stubs之外,我没有找到有关标头指令的其他文档。

0 投票
1 回答
653 浏览

scala - 正确使用 scalaz Future 进行异步执行

我想我不完全理解 scalaz Futures 是如何工作的。我正在尝试将一个项目从 scala futures 移植到 scalaz 实现,但问题是 scalaz Future 的性能较低。最简单的示例是使用 Spray 在身份验证请求中加载配置文件。

函数本身:

scalaz 版本仅在一个符号上有所不同,我Future.applyscalaz.concurrent. 现在加载一些 html 页面的 Spray 路由:

loadProfile一样,scalaz 版本的不同之处仅在于方法调用:

但是 scala Future 版本的请求在(大约)143ms完成,而 scalaz 版本在260ms完成。所以我不太关心这个特定的请求,而是一般的异步执行和服务的可扩展性,正如我在 scalaz Future 中理解的那样,我必须手动将执行分叉到一个单独的线程,所以它按顺序执行?scalaz 未来的用法有什么好的介绍/教程吗?

0 投票
1 回答
1726 浏览

scala - Spray中的路由设计

我正在尝试为配置文件管理提供休息服务。所以我有以下配置文件的uri:

但是对于具有不同仪表板的不同用户,有不同的配置文件类型,所以我想提取profileTypeid作为顶部路径并在此下使用不同的操作。我试着用 DRY 的方式写它:

但是如果我在地址栏中输入以下内容:

它抛出服务器异常。有什么问题?

0 投票
1 回答
570 浏览

scala - 如何同时使用 cookie 和 BASIC 认证?

我正在使用 cookie 和基本身份验证的组合。在基本认证中,它需要一个函数

并返回一个Directive[T].

我希望在 cookie 上创建一个指令,它需要一个函数

并返回一个Directive[T].

因此我可以做一个组合的 auth 指令cookieAuth | basicAuth

我能得到的最接近的是:

但签名不匹配。我得到了例外:

0 投票
1 回答
1423 浏览

performance - Tomcat 7 上的 Spray-servlet 与 JVM 上的 Spray-can jar

有没有人在以下两种组合中对他/她的应用程序的性能进行了基准测试?

  1. 使用 spray-servlet 构建并部署在 JVM 7 上的 Tomcat 7 上
  2. 用喷雾罐构建并在 JVM 7 上部署为 jar

我猜 2) 在大多数情况下都比 1) 性能好,即使 1) 使用 servlet 3.0 特性。

我问的原因是我的团队需要权衡性能和应用程序部署/管理(自动扩展、监控等)的易用性,因为 AWS Elastic Beanstalk 的默认 java webapp 配置是运行 Tomcat 的 Linux。

对此的任何意见将不胜感激。干杯

0 投票
1 回答
3506 浏览

json - 我应该使用 Spray 还是 play 进行高度可扩展和高效的 rest json 处理?

我应该为高效的高吞吐量 REST json 服务器使用 play 还是 spray?我会玩,因为这样我也可以拥有一个用于 REST 和 Web 开发的单一框架。但是,如果喷雾比这更有效,我会选择喷雾。

我会立即开始玩耍,但我在这里看到喷雾在列表中排名很高,而玩耍则更多。

你怎么看?

0 投票
1 回答
405 浏览

scala - Scala Spray 识别日志记录中的异常

我希望在 Spray 中实现请求/响应日志记录。现在我有几个额外的变量要包含在我的日志中,例如用户(如果已解决)和 transactionId,它只是一个 UUID,将在记录各种命令和查询时使用,因此它们都可以链接。

现在,如果抛出异常,我将进入自定义 ExceptionHandler。这仅引用了 RequestContext,而不是我想要登录的任何其他属性。

上下文中是否有任何唯一的标识符可用,或者以某种方式在 ExceptionHandler 中传递附加值?