Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在游戏中的合成动作中传输http响应!框架2.1_Http_Scala_Playframework_Streaming_Playframework 2.1 - Fatal编程技术网

在游戏中的合成动作中传输http响应!框架2.1

在游戏中的合成动作中传输http响应!框架2.1,http,scala,playframework,streaming,playframework-2.1,Http,Scala,Playframework,Streaming,Playframework 2.1,我正在使用Play Zentasks示例应用程序作为模板创建一个封装其他操作的身份验证操作。这需要能够做的一件事是在某些情况下点击Web服务,以检索用户的详细信息。我想以一种非阻塞的方式来做这件事,但我不想把未来传给我正在包装的动作 我能想到的唯一方法是使用Enumerator.fromStream()和从URL对象提取的InputStream。我猜这不是最好的方法,因为这看起来像是重复工作(考虑到ws对象)。然而,异步ws-api(以及底层的asynchttpclient)会为一切返回未来。我

我正在使用Play Zentasks示例应用程序作为模板创建一个封装其他操作的身份验证操作。这需要能够做的一件事是在某些情况下点击Web服务,以检索用户的详细信息。我想以一种非阻塞的方式来做这件事,但我不想把未来传给我正在包装的动作

我能想到的唯一方法是使用Enumerator.fromStream()和从URL对象提取的InputStream。我猜这不是最好的方法,因为这看起来像是重复工作(考虑到ws对象)。然而,异步ws-api(以及底层的asynchttpclient)会为一切返回未来。我想以前没有人解决过这个问题,可以给我指出另一个方向吗?有什么我遗漏的吗?另外,我建议使用Enumerator.fromStream()肯定不会阻塞吗

提前感谢,


因此,您可以使用异步WS-api。当它返回未来时,您可以调用该映射,并将值传递给正在包装的操作。现在,您有了一个包含打包操作结果的未来。将其转换为AsyncResult,或者将整个内容包装在Async{}块中,它应该可以工作