我正在Node中构建API,并且正在努力找出一些解决方案。即,我知道如何构建类型的路由/api/:paramA/:paramB。在这种情况下,有两个参数。
该代码将是这样的:
router.get('/test/:paramA/:paramB', function(req, res) {
res.json({ message: 'hooray! welcome to our api!' + req.params.paramA + req.params.paramB});
});
Run Code Online (Sandbox Code Playgroud)
一个人如何建立一条能对诸如此类的东西做出反应的路线/api?paramA=valueA¶mB=valueB?
我有大约20个文件,自上次提交以来有未分阶段的更改.我想放弃其中一个文件的更改,同时保持对其余文件的更改保持不变.我怎么能这样做?
我的问题很简单(也许是误导性的).
在Common Lisp中,当我运行以下命令时,我得到相应的结果:
(eval '''boo) => 'boo
Run Code Online (Sandbox Code Playgroud)
另一方面,如果我运行以下命令,我会得到一些略有不同的东西.
(eval (eval '''boo)) => boo
Run Code Online (Sandbox Code Playgroud)
我的问题是:如果第一个命令eval从变量符号中"删除"两个引号并在输出处留下一个标记,那么两个嵌套eval函数如何取出总共三个引号?
这特别令人困惑,因为以下结果会导致错误:
(eval 'boing) => ERROR. BOING is unbound.
Run Code Online (Sandbox Code Playgroud) 我想知道Common Lisp中的数组,列表和哈希表有什么区别.也就是说,我知道如何在语法上实现和使用它们.我也知道围绕这三种数据类型的计算机科学理论.
我想知道的是什么是Common-Lisp特定的实现?应该如何使用它们来优化性能代码(空间和时间)?Common Lisp中的这些数据结构是否存在任何特性?他们在运行时有多贵?
我目前正在Common Lisp中构建一个项目,并且正在使用ASDF。但是,我遇到了一些困难。即,当我运行时asdf:compile-system,它似乎可以编译。这样我就可以asdf:load-system成功。但是,位于某些文件中的某些功能仍未定义。为了让他们知道,我必须手动导航到该文件并进行编译。
这是系统的声明。有人可以告诉我我做错了什么吗?
(defsystem "xxx-xxxx"
:version "0.1.0"
:author ""
:license ""
:depends-on ("cl-mongo" "hunchentoot" "clack" "ningle" "cl-json" "hermetic" "lack-middleware-session" "cl-markup")
:components ((:module "src"
:components
((:file "packages")
(:file "lisp-utils")
(:file "xxx-xxxx" :depends-on ("packages"))
(:file "database" :depends-on ("packages"))
(:file "database-config" :depends-on ("packages"))
(:file "server" :depends-on ("packages"))
(:file "clack" :depends-on ("packages"))
(:file "routes/activities" :depends-on ("packages"))
(:file "route-processors" :depends-on ("packages")))))
:description ""
:long-description
#.(read-file-string
(subpathname *load-pathname* "README.markdown"))
:in-order-to ((test-op (test-op "xxx-xxxx-test"))))
Run Code Online (Sandbox Code Playgroud)
特别是,我在文件routes/activities和可能存在问题route-processors。
我不确定如何恰当地说出这个问题.但是,它就是这样的.
假设我们有一些类似于defunCommon Lisp的宏,并且构建在它之上.我用其中一个宏做了声明,编译得很好.
但是,当我在REPL打电话时,我得到NIL了结果.这看起来令人费解,所以我在REPL评估了原始声明.它评估为NIL.
我需要调试这个.我的问题是我是否应该关注读者级别或其他地方.也就是说,如果没有抛出错误,我可以在哪里开始对此进行故障排除?