小编Dom*_*mra的帖子

Scala隐式转换范围问题

拿这个代码:

  class Register(var value:Int = 0) {
      def getZeroFlag() : Boolean = (value & 0x80) != 0
  }

  object Register {
      implicit def reg2int(r:Register):Int = r.value
      implicit def bool2int(b:Boolean):Int = if (b) 1 else 0
  }
Run Code Online (Sandbox Code Playgroud)

我想这样使用它:

val x = register.getZeroFlag + 10
Run Code Online (Sandbox Code Playgroud)

但我受到了欢迎:

type mismatch; found : Boolean required: Int
Run Code Online (Sandbox Code Playgroud)

怎么了?我是否需要定义一个隐式的函数返回一个bool?

scala implicit implicit-conversion

6
推荐指数
1
解决办法
3391
查看次数

设计 - 如何设置会话cookie?

我有一个场景,我不需要在HTTP上设置会话,而只是在HTTPS页面上设置它.目前的问题是我们在HTTPS和HTTP之间共享会话字符串.

即如果您访问我们的HTTP页面,则会为您分配一个会话字符串(不安全).当您访问我们的某个HTTPS页面时,它使用相同的会话字符串.它们在两者之间共享.我们不希望人们能够跨未加密的连接窥探会话字符串.

有人可以指点我一些阅读,或者我可以实现这样的事情吗?甚至在哪里看 - 我有点难过.找不到多少

security session ruby-on-rails devise

6
推荐指数
1
解决办法
6140
查看次数

Mongoose - 子文档验证不起作用

我有一个看起来像这样的架构:

var minderSchema = mongoose.Schema({
  phones: {type: [{
    details: {
      type: {
        country_code: { type: String, required: true },
        region_code: { type: String, required: true },
        number: { type: Number, required: true }
      },
      required: true
    },
  }], required: true},
})
Run Code Online (Sandbox Code Playgroud)

那是......一个监视器由一系列电话组成(这是必需的).每部手机必须有国家代码,地区代码和号码.但验证似乎不起作用.即我可以创建:

var minder = new Minder({
  "phones": [{
     details: {
        number: "3343434"
     }
   }]
});
Run Code Online (Sandbox Code Playgroud)

这应该不起作用,因为它缺少国家代码和区域代码.实际上我可以创建这样的文档:

var minder = new Minder({
  "phones": [{
    details: {
      "sdf":"sdf"
    }
  }]
});
Run Code Online (Sandbox Code Playgroud)

它验证了.

我错过了什么概念?

mongoose mongodb node.js

6
推荐指数
1
解决办法
3600
查看次数

多处理队列批量获取最多 N 个元素

我需要以阻塞方式从队列中获取尽可能多的项目(最多 N 个)。例如:

queue.get(16)
Run Code Online (Sandbox Code Playgroud)

最多应返回 16 个元素,但如果为空则阻塞。

python queue

6
推荐指数
1
解决办法
3769
查看次数

如何检查值是否与字符串匹配

我在这里有一个结构,例如:

char *sname;
........
players[i].sname
Run Code Online (Sandbox Code Playgroud)

等于"詹姆斯".

我需要检查值之间的相等性,如下所示:

if (players[i].sname == 'Lee')
Run Code Online (Sandbox Code Playgroud)

但我没有太多运气.是否有一个str*我应该使用的功能,或者无论如何都要修复我的if陈述?

c

5
推荐指数
2
解决办法
800
查看次数

Logback - 使用每个方法的附加程序,而不是类

我有一个包含多种方法的类。我希望每种方法都输出到不同的日志文件。使用这样的 logback.xml 文件,它会记录来自该类的所有日志记录调用。

<logger name="com.mincom.ellipse.conversion.BatchConverter" level="INFO">
   <appender-ref ref="FILE" />
</logger>
Run Code Online (Sandbox Code Playgroud)

如何获取每个方法的日志记录调用。我确定这很简单,但我似乎看不到 doco 中的答案。

java logging logback

5
推荐指数
1
解决办法
2305
查看次数

Scala和Play-Framework公开REST服务.现在渲染(但需要使用其他东西然后Scala)

我的大学任务有一个非常特殊的要求.其关键在于我们需要构建一个使用2种不同语言的Web应用程序.奇怪的要求我知道.

我立刻想到让Scala和Play Framework以JSON方式提供数据,然后拥有某种Python客户端,将REST服务呈现为HTML.

问题是我对此很新.我之前从未做过REST的事情,甚至术语也令人生畏.然而,我设法让几个模型启动并运行Play,为Json提供服务.现在我需要渲染它.

你会建议什么来满足这个要求?还有其他想法吗?理想情况下,我仍然希望使用Scala和Play,但除了这个限制之外,我不关心还有什么.

编辑:我知道这是一个奇怪的要求.为什么我不会只使用Play来呈现HTML ...?唉,我不能.

java rest web-services scala

5
推荐指数
1
解决办法
2432
查看次数

Java - 并发/阻塞队列单元测试策略

我有一个程序来操作从阻塞队列中提取工作项并同时处理它们.我意识到这是一个非常宽松的描述,但任何人都可以建议单元测试策略/想法测试什么?

java testing concurrency

5
推荐指数
1
解决办法
1668
查看次数

Ruby - 使用索引进行过滤的函数式方法

我有一个像这样的数组:

stuff = ["A", " ", "C", " ", "E", " ", "G"]
Run Code Online (Sandbox Code Playgroud)

我想返回一个包含所有索引的数组,其中数据是空格。例如:

[1, 3, 5]
Run Code Online (Sandbox Code Playgroud)

有没有一种很好的功能性方法来做到这一点?我知道有一个each_with_index方法返回 an Enumerable,但我不知道如何使用过滤器来使用它。

编辑:NVM,经过 30 分钟的尝试才解决了它。这是我的方法。

indexes = stuff.collect.with_index { |elem, index| index if elem == " "}.
             select { |elem| not elem.nil? }
Run Code Online (Sandbox Code Playgroud)

ruby functional-programming

5
推荐指数
2
解决办法
2656
查看次数

CMake-在静态库中包括依赖项

我对C ++和所有相关术语和工具链非常陌生。我正在尝试建立一个静态库,客户可以在自己的项目中使用。理想情况下,除了.a和.lib文件,再加上.h文件外,我什么也不想发送。

现在,我的CMake文件如下所示:

project(ava-engine-client)
cmake_minimum_required(VERSION 3.9.6)
set(CMAKE_BUILD_TYPE Release)
set(CMAKE_FIND_LIBRARY_SUFFIXES .a )

add_compile_options(-std=c++11)

# GRPC and Protocol Buffers libraries location
list(APPEND CMAKE_PREFIX_PATH "/opt/grpc" "/opt/protobuf")

# CMake find modules
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")


# Recurse and find all the generated Protobuf .cc files
file(GLOB_RECURSE PROTO_GEN_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/ava_engine/ava/*.cc)

include_directories("${CMAKE_CURRENT_SOURCE_DIR}")

# Building the library
add_library(ava_engine_client STATIC src/AvaEngineClient.cc src/AvaEngineClient.h ${PROTO_GEN_SRCS})

target_link_libraries(ava_engine_client ${PROTOBUF_LIBRARIES} ${GRPC_LIBRARY})


## Building Playground
add_executable(playground src/Playground.cc)

target_link_libraries(playground ava_engine_client)
Run Code Online (Sandbox Code Playgroud)

现在,这在链接阶段失败了,因为我没有使用ava_engine_client库中的依赖项链接游乐场目标:

Undefined symbols for architecture x86_64:
  "grpc::ClientContext::ClientContext()", referenced from:
      ...
  "grpc::ClientContext::~ClientContext()", referenced from:
      ...
  "grpc::CreateChannel(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> …
Run Code Online (Sandbox Code Playgroud)

c++ cmake

5
推荐指数
1
解决办法
2120
查看次数