我在端口5000上运行Koa应用程序,我希望Ngnix在子目录中提供应用程序 - 例如: http://example.com/myNodeApp
这就是我目前所拥有的 /etc/nginx/sites-enabled/default
location ^~ /myNodeApp/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:5000/;
}
Run Code Online (Sandbox Code Playgroud)
这类型的作品......除了那如任何重定向的事实this.redirect('/')在我兴亚应用程序转到nginx的Web根目录/
此外,它不会从我的Koa应用程序的public目录中呈现任何内容,例如样式表,javascript和图像.
我究竟做错了什么?谢谢.
我编写了一个从 MongoDB 数据库检索数据的 API。我还有一个使用来自 API 的数据的前端应用程序(如果相关的话,这两个应用程序都是使用 Koa 框架用 Node JS 编写的)
我需要对给定时期内需要计算(平均值、五分位数等)的大量数值数据进行聚合,这可能是按月、按年或按 personID 分组的所有数据。
我读过一些例子,人们说 API 应该用作数据库层的包装器,仅提供对原始数据的访问 - 但对我来说,逻辑将存在于数据库中(而不是询问前端应用程序来搅动数据)。
这是一个常见问题吗?根据您自己的经验,是使用 API 进行聚合更好,还是使用前端应用程序更好?
示例文档
{
"date": ISODate("2016-07-31T07:34:05+01:00Z"),
"value": 5,
"personID": 123
},
{
"date": ISODate("2016-08-01T12:53:05+01:00Z"),
"value": 3,
"personID": 789
}
Run Code Online (Sandbox Code Playgroud) 我想链接到Sinatra设置的默认公共目录之外的CSS和JavaScript文件.
我知道我可以set :public用来更改目录,但我想保留默认目录和其他'public_2'.
有没有办法做到这一点?
我正在尝试使用PDO在PHP中运行查询.查询在顶部有一些变量来确定排名,除了在$ sql中使用SET @var时,它返回一个空行集.但是,如果我删除有问题的SQL,它返回正常.
我不想在我的脚本中返回@prev_value,@ lamb_count或@rank_increasing,只返回它在SELECT中创建的等级.
你能让我知道我做错了吗?
谢谢
$sql = "
SET @prev_value = NULL;
SET @rank_count = 0;
SET @rank_increasing = 0;
SELECT a.*
, @rank_increasing := @rank_increasing + 1 AS row_num
, CASE
WHEN @prev_value = score
THEN @rank_count
WHEN @prev_value := score
THEN @rank_count := @rank_increasing
END AS rank
FROM (
-- INLINE VIEW --
) a
";
try {
$sth = $dbh->prepare($sql);
$sth->execute(array($var1, $var2));
return $sth->fetchAll(PDO::FETCH_ASSOC);
} catch (Exception $e) {
return $e;
}
Run Code Online (Sandbox Code Playgroud) 我在使用Oracle DB模块时遇到问题:https : //github.com/oracle/node-oracledb/blob/master/doc/api.md
我有一个应用程序,每小时有300到900次匹配(通常来自大约100个用户)。该应用程序在后台有许多$ .post请求,以从数据库中检索信息并显示给用户。
我最近切换到了该模块,因为它是Oracle自己的(我以前使用的是https://github.com/joeferner/node-oracle)。
这是我列出的方式:
/ bin / www
oracledb.createPool(
{
user : 'USER'
password : 'PASS',
connectString : 'DB:1521/SID:POOLED',
connectionClass : 'ARBITRARY_NAME',
poolMin : 1,
poolMax : 50,
poolTimeout : 300
},
function(err, pool)
{
if (err) {
console.log(err);
}
require('../libs/db')(pool); // Export pool to separate file
}
)
Run Code Online (Sandbox Code Playgroud)
/libs/db.js
module.exports = function(pool) {
// Require oracle module for formatting
var oracledb = require('oracledb');
// Export acquire and query function
module.exports.acquire_and_query = function(sql, …Run Code Online (Sandbox Code Playgroud) 我正在学习 node js,并使用 SQLite3 创建一个可移植的项目/任务/工作流工具(它最终会在 github 上结束)。
如果这是用户第一次运行节点应用程序(并且 SQLite 数据库文件不存在),我希望它运行安装 SQL 脚本来创建它需要工作的所有表。
我可以将它们全部作为单独的事务处理,但这看起来很混乱,而且在一次调用中完成所有操作要容易得多。
在 Oracle 中,我知道我可以将它们全部包装如下:
BEGIN CREATE TABLE1...; CREATE TABLE2...; END;
Run Code Online (Sandbox Code Playgroud)
不过,我对 SQLite 了解不多(也不知道我是否可以做我想做的事情)。
下面的代码仅创建第一个表(而不是其他表)。
谢谢。
Express Node JS 应用程序在启动时调用 SQL
// Declare Express
var express = require('express');
// Instantiate Express
var app = express();
// Create a http server with express
var server = require('http').createServer(app);
// Instantiate socket on the http express server
var io = require('socket.io').listen(server);
// Declare filesystem
var fs = require('fs');
// Database File
var …Run Code Online (Sandbox Code Playgroud)